SSAFY/SWEA

[SWEA] 1229 : 암호문 2

믕비 2023. 4. 26. 19:47
반응형

https://swexpertacademy.com/main/talk/solvingClub/problemView.do?solveclubId=AV6kld8aisgDFASb&contestProbId=AV14yIsqAHYCFAYD&probBoxId=AV-4MojKLNADFATz&type=PROBLEM&problemBoxTitle=%5BD2~D3+%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4%5D+%EA%B8%B0%EC%B4%88+%EB%8B%A4%EC%A7%80%EA%B8%B0+Part4&problemBoxCnt=14 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

내 코드

메모리 : 18720 KB

실행시간 : 104 ms

코드길이 : 1461 B

 

[내 코드]

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.List;
import java.util.StringTokenizer;

public class Solution {

	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb = new StringBuilder();
		StringTokenizer st;
		
		for(int testcase = 1; testcase <= 10; testcase++) {
			sb.append('#').append(testcase).append(' ');
			List<Integer> list = new LinkedList<>();
			//1. 원본 암호문의 길이
			int N = Integer.parseInt(br.readLine());
			//2. 원본 암호문
			st = new StringTokenizer(br.readLine());
			for(int n = 0; n < N; n++) {
				list.add(n, Integer.parseInt(st.nextToken()));
			}
			//3. 명령어의 개수
			int order = Integer.parseInt(br.readLine());
			//4. 명령어
			st = new StringTokenizer(br.readLine());
			for(int o = 0; o < order; o++) {
				String first = st.nextToken();
				int x = Integer.parseInt(st.nextToken());
				int y = Integer.parseInt(st.nextToken());
				
				if(first.equals("I")) {
					for(int s = x; s < x + y; s++) {
						list.add(s, Integer.parseInt(st.nextToken()));
					}
				}
				else if(first.equals("D")) {
					//삭제
					for(int d = 0; d < y; d++) {
						list.remove(x);
					}
				}
			}
			
			for(int i = 0; i < 10; i++) {
				sb.append(list.get(i)).append(' ');
			}
			sb.append('\n');
		}
		System.out.print(sb);
	}

}
반응형

'SSAFY > SWEA' 카테고리의 다른 글

[SWEA] 1215 : 회문 1  (0) 2023.04.26
[SWEA] 1230 : 암호문 3  (0) 2023.04.26
[SWEA] 1228 : 암호문 1  (0) 2023.04.26
[SWEA] 1234 : 비밀번호  (0) 2023.04.26
[SWEA] 1298 : 원재의 메모리 복구하기  (0) 2023.04.17