알고리즘,손코딩 문제

프로젝트 오일러 문제 29 : 2 ≤ a ≤ 100 이고 2 ≤ b ≤ 100인 a, b를 가지고 만들 수 있는 ab는 중복을 제외하면 모두 몇 개입니까?

알통몬_ 2017. 3. 11. 20:29
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

2 ≤ a ≤ 5 이고 2 ≤ b ≤ 5인 두 정수 a, b로 만들 수 있는 ab의 모든 조합을 구하면 다음과 같습니다.

22=4,  23=8,  24=16,  25=32
32=9,  33=27,  34=81,  35=243
42=16,  43=64,  44=256,  45=1024
52=25,  53=125,  54=625,  55=3125

여기서 중복된 것을 빼고 크기 순으로 나열하면 아래와 같은 15개의 숫자가 됩니다.

4,  8,  9,  16,  25,  27,  32,  64,  81,  125,  243,  256,  625,  1024,  3125

그러면, 2 ≤ a ≤ 100 이고 2 ≤ b ≤ 100인 a, b를 가지고 만들 수 있는 ab는 중복을 제외하면 모두 몇 개입니까?


public class Question {

public static void main(String[] args) {

Set<BigInteger> set = new HashSet<>();

int count = 0;

BigInteger same = new BigInteger("0");

for (int a = 2; a <= 100; a++) {

BigInteger bi1 = new BigInteger(String.valueOf(a));

for (int b = 2; b <= 100; b++) {

bi1 = bi1.multiply(bi1.valueOf(a));

set.add(bi1);

}

}


System.out.println(set.size());

}


 

}

반응형