문제 : https://www.acmicpc.net/problem/9095
핵심
test_case를 입력받고 정수 N을 입력 받았을 때, 정수를 1,2,3의 합으로 표현할 수 있는 경우의 수를 구하는 문제이다.
N의 범위 : N<=10
풀이
이 경우는 N중 for문을 이용해서 문제를 푼다.
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| public class Exam9095 {
public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int test_case = Integer.parseInt(bf.readLine()); for(int i=0;i<test_case;i++) { int num = Integer.parseInt(bf.readLine()); int cnt = 0; for(int l1=1;l1<=3;l1++) { if(l1 == num) { cnt++; }for(int l2=1;l2<=3;l2++) { if(l1+l2 == num) { cnt++; }for(int l3=1;l3<=3;l3++) { if(l1+l2+l3 == num) { cnt++; }for(int l4=1;l4<=3;l4++) { if(l1+l2+l3+l4 == num) { cnt++; }for(int l5=1;l5<=3;l5++) { if(l1+l2+l3+l4+l5 == num) { cnt++; }for(int l6=1;l6<=3;l6++) { if(l1+l2+l3+l4+l5+l6 == num) { cnt++; }for(int l7=1;l7<=3;l7++) { if(l1+l2+l3+l4+l5+l6+l7 == num) { cnt++; }for(int l8=1;l8<=3;l8++) { if(l1+l2+l3+l4+l5+l6+l7+l8 == num) { cnt++; }for(int l9=1;l9<=3;l9++) { if(l1+l2+l3+l4+l5+l6+l7+l8+l9 == num) { cnt++; }for(int l10=1;l10<=3;l10++) { if(l1+l2+l3+l4+l5+l6+l7+l8+l9+l10 == num) { cnt++; } } } } } } } } } } } System.out.println(cnt); }
}
}
|