Hayden's Archive
[알고리즘] SW Expert Academy - 5356. 의석이의 세로로 말해요 본문
내가 작성한 코드
큐의 FIFO 성질을 이용해서 큐 5개를 만들면 어렵지 않게 풀 수 있다.
import java.util.Scanner;
import java.util.LinkedList;
import java.util.Queue;
import java.io.FileInputStream;
class Solution{
public static Queue<String> putIntoQueue(String que){
Queue<String> queue = new LinkedList<>();
String[] queArr = que.split("");
for(int i=0; i<queArr.length; i++) {
queue.add(queArr[i]);
}
return queue;
}
public static void main(String args[]) throws Exception{
Scanner sc = new Scanner(System.in);
int T;
T=sc.nextInt();
for(int test_case = 1; test_case <= T; test_case++){
String que1 = sc.next();
String que2 = sc.next();
String que3 = sc.next();
String que4 = sc.next();
String que5 = sc.next();
Queue<String> queue1 = putIntoQueue(que1);
Queue<String> queue2 = putIntoQueue(que2);
Queue<String> queue3 = putIntoQueue(que3);
Queue<String> queue4 = putIntoQueue(que4);
Queue<String> queue5 = putIntoQueue(que5);
String answer = "";
while(true) {
if(queue1.isEmpty()&&queue2.isEmpty()&&queue3.isEmpty()&&queue4.isEmpty()&&queue5.isEmpty()) break;
if(queue1.isEmpty()) {
answer += "";
}else {
answer += queue1.poll();
}
if(queue2.isEmpty()) {
answer += "";
}else {
answer += queue2.poll();
}
if(queue3.isEmpty()) {
answer += "";
}else {
answer += queue3.poll();
}
if(queue4.isEmpty()) {
answer += "";
}else {
answer += queue4.poll();
}
if(queue5.isEmpty()) {
answer += "";
}else {
answer += queue5.poll();
}
}
System.out.println("#"+test_case+" "+answer);
}
}
}