• 문제 링크
2490번: 윷놀이
우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때 도(배 한
www.acmicpc.net
• 풀이 과정
도, 개, 걸, 윷, 모 각각의 조합이 대응되는 수는 3, 2, 1, 0, 4 로
입력받은 배(0), 등(1) 총 네 개의 윷짝의 정보를 cnt 변수에 더해 조합이 결정된다.
이를 던진 횟수, 3번에 걸쳐 각 라인에 출력해 정답이 구해진다.
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
for (int i = 0; i < 3; i++) {
int cnt = 0;
st = new StringTokenizer(br.readLine());
for (int j = 0; j < 4; j++)
cnt += Integer.parseInt(st.nextToken());
if (cnt == 3)
bw.write('A' + "\n");
else if (cnt == 2)
bw.write('B' + "\n");
else if (cnt == 1)
bw.write('C' + "\n");
else if (cnt == 0)
bw.write('D' + "\n");
else
bw.write('E' + "\n");
}
bw.flush();
}
}
또는 각 조합의 정보를 배열에 담아 입력받은 배, 등의 정보를 더한 값을 인덱스로써 사용해
해당 조합을 출력하는 방식으로 좀 더 코드를 간결하게 작성 가능하다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
char[] comb = { 'D', 'C', 'B', 'A', 'E' };
for (int i = 0; i < 3; i++) {
int idx = 0;
st = new StringTokenizer(br.readLine());
while (st.hasMoreTokens())
idx += Integer.parseInt(st.nextToken());
bw.write(comb[idx] + "\n");
}
bw.flush();
}
}
댓글