[백준][c] 2292번: 벌집

2021. 7. 13. 02:54·Algorithm/백준
반응형

https://www.acmicpc.net/problem/2292

 

2292번: 벌집

위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌

www.acmicpc.net

 

문제

위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다.

입력

첫째 줄에 N(1 ≤ N ≤ 1,000,000,000)이 주어진다.

출력

입력으로 주어진 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나는지 출력한다.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int sum_hexagon(int _n) {	//벌집의 최대값을 반환
	int sum = 1;

	for (int i = 0; i <= _n; i++ ) {
		sum += 6 * i;
	}
	return sum;
}


int main() {
	int a;
	int i;	//sum_hexagon에 입력할 값. 육각형 한 변의 점의 개수

	scanf("%d", &a);

	for (i = 1; !(sum_hexagon(i - 2) <= a && a <= sum_hexagon(i - 1)); i++) {
		//비어있음
	}

	printf("%d", i);
}

문제풀이

벌집의 최대값을 반환하는 함수를 작성했습니다. 그리고 비어있는 for문을 활용해서 범위에 포함되는 i의 값을 구하고 출력했습니다.

ex) 13 입력 후 3이 출력되는 경우: 1 + 6*1 <= 13 <= 1 + 6*1 + 6*2

비고

교과서의 수학 문제에서 함수를 굉장히 많이 사용하듯이, 실생활의 수학문제를 코딩할때도 함수는 매우 중요해보입니다.

반응형
저작자표시 비영리 (새창열림)

'Algorithm > 백준' 카테고리의 다른 글

[백준][C/C++] 2869번: 달팽이는 올라가고 싶다  (0) 2021.07.14
[백준][C/C++] 1193번: 분수찾기  (0) 2021.07.13
[백준][C/C++] 1712번: 손익분기점  (0) 2021.07.13
[백준][c] 1316번: 그룹 단어 체커  (0) 2021.07.13
[백준][C/C++] 2941번: 크로아티아 알파벳  (0) 2021.06.29
'Algorithm/백준' 카테고리의 다른 글
  • [백준][C/C++] 2869번: 달팽이는 올라가고 싶다
  • [백준][C/C++] 1193번: 분수찾기
  • [백준][C/C++] 1712번: 손익분기점
  • [백준][c] 1316번: 그룹 단어 체커
Giken
Giken
𝐒𝐲𝐬𝐭𝐞𝐦.𝐨𝐮𝐭.𝐩𝐫𝐢𝐧𝐭𝐥𝐧("𝐇𝐞𝐥𝐥𝐨 𝐖𝐨𝐫𝐥𝐝!");
  • Giken
    개발자 기켄
    Giken
  • 전체
    오늘
    어제
    • 분류 전체보기 (148)
      • Programming Language (26)
        • C (3)
        • C++ (2)
        • Java (19)
      • Web (4)
      • Database (1)
        • SQL (5)
      • Spring (10)
      • PHP (7)
      • Linux (1)
      • Server (1)
      • Infra (3)
      • Algorithm (74)
        • 백준 (71)
        • 프로그래머스 (0)
      • 프로젝트 (2)
      • Etc (8)
      • 낙서 (5)
  • 블로그 메뉴

    • GitHub
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    SQL고득점키트
    윤년
    프로그래머스
    2753
    DB
    백준
    SQL
    평년
    C
    1330
    2588
    9498
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Giken
[백준][c] 2292번: 벌집
상단으로

티스토리툴바