import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Test10250 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine()); // 테스트 케이스
for (int i = 0; i < T; i++) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int H = Integer.parseInt(st.nextToken());
st.nextToken(); // W 는 그냥 버린다.
int N = Integer.parseInt(st.nextToken());
if (N % H == 0) sb.append((H * 100) + (N / H)).append('\n');
else sb.append(((N % H) * 100) + ((N / H) + 1)).append('\n');
}
System.out.print(sb);
}
}
나 같은 경우는 모든 경우에 수를 다 체크하기 위해 if문을 난잡하게 코드를 작성하였는데,
그렇게 작성하니.. 왜 내가 이렇게 짰는지 기억도 못할 정도로 복잡해졌다.
문제풀이를 보니 간단명료하게 푼것을 보고 현타가 왔다...ㅠㅠ 그래도 이해는 했으니 다행이다.
2755
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test2775 {
public static int[][] APT = new int[15][15];
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int cnt = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
make_APT();
for (int i = 0; i < cnt; i++) {
int k = Integer.parseInt(br.readLine());
int n = Integer.parseInt(br.readLine());
sb.append(APT[k][n]).append('\n');
}
System.out.println(sb);
}
private static void make_APT() {
//초기화
for(int i = 0; i < 15; i++) {
APT[i][1] = 1; //각층 1호는 다 1
APT[0][i] = i; //0층 1,2,3,4~~ 넣어준다.
}
for (int i = 1; i < 15; i++) { // 1층부터 14층까지
for (int j = 2; j < 15; j++) { // 2호부터 14호까지
APT[i][j] = APT[i - 1][j] + APT[i][j - 1];
}
}
}
}