문제

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

문제 풀이

  • 벌집의 모양을 2차원 배열로 풀면 다음과 같다
  • 0번째 배열 : [1]
  • 1번째 배열 : [2][3][4][5][6][7]
  • 2번째 배열 : [8][9][10][11][12][13][14][15][16][17][18][19] ….

0번째=>1번째 배열을 넘어갈 때 제외하고 6개씩 늘어난다.
벌집이 6각형인데 다음 배열로 넘어가면 3면은 기존벌집과, 3면은 새로운 벌집과 만나게 된다.
여기서 같은 배열끼리 중복해서 닿은 걸 빼면 6면이 추가로 맞닿게 된다.
이건 아무리 벌집이 많아져도 동일하다.
(계차수열 문제)

Source

import java.util.Scanner;
public class Main {
       public static void main(String[] args) {
              Scanner sc = new Scanner(System.in);
              int index = sc.nextInt();
              int count = index;
              int i = 1;
              while(count > 1)
              {
                     count = count - (6*i);
                     
                      ++i;
                     if(0 >= count)
                           break;
              }
              System.out.println(i);
       }
}