문제 : 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);
}

}

}