https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14w-rKAHACFAYD
크게 어려운 건 없고
LinkedList를 이용하면 된다.
배열에 삽입, 삭제가 많은 경우 LinkedList를 사용해야한다는 점을 기억하자.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.StringTokenizer;
public class Solution_1228 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for(int t=1;t<=10;t++) {
LinkedList<Integer> list = new LinkedList<>();
int N = Integer.parseInt(br.readLine()); //원본암호문 길이
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i = 0;i<N;i++) {
list.add(Integer.parseInt(st.nextToken()));
}
N = Integer.parseInt(br.readLine()); // 명령어 개수
st = new StringTokenizer(br.readLine());
for(int i = 0;i<N;i++) {
if(st.nextToken().equals("I")) {
int x = Integer.parseInt(st.nextToken()); //x위치 다음
int y = Integer.parseInt(st.nextToken());
// System.out.print("x:"+x+" y:"+y+"\n");
for(int j = 0;j<y;j++) {
list.add(x,Integer.parseInt(st.nextToken()));
x++;
}
}
}
System.out.print("#"+t+" ");
for(int i=0;i<10;i++) {
System.out.print(list.get(i)+" ");
}
System.out.println();
}
}
}
'공부 > 알고리즘' 카테고리의 다른 글
[백준]1260_DFS와 BFS_JAVA 풀이 (0) | 2022.02.08 |
---|---|
[SWEA]9229_한빈이와 Spot Mart JAVA 풀이 (0) | 2022.02.08 |
[SWEA]1225_암호생성기 JAVA 풀이 (0) | 2022.02.08 |
[백준]1712_python파이썬 풀이 (0) | 2022.01.03 |
[백준]2941_python파이썬 풀이 (0) | 2021.12.30 |
댓글