지극히 개인적인 개발블로그
백준 알고리즘 2292: 벌집(Java) 본문
우선 규칙을 찾아야 합니다.
방(1)은 1개
방(2)~방(7)은 2개
방(8)~방(19)은 3개
방(20)~방(37)은 4개
방 사이의 간격이 6, 12, 18로 나뉘어진다는걸 안다면 쉽게 풀 수 있습니다.
import java.util.Scanner;
public class Sol_2292 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int ans = 1; //정답의 개수. 최소 방 1개는 거친다
int room = 1; //최초로 시작하는 룸 넘버
int addNum = 6; //공차가 6인 등차수열
while(true)
{
if(num <= room)
break;
room += addNum;
addNum += 6;
ans++;
}
System.out.println(ans);
}
}