Notice
Recent Posts
Link
- Today
- Total
hye-log
[SWEA]1228번 암호문1(JAVA) 본문
0. 문제 링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14w-rKAHACFAYD
1. 문제 설명
1) 원본 암호문이 주어졌을 때 명령어에 따라 암호문에 숫자를 덧붙임
2) I x y s : x의 위치 바로 다음에 y개의 숫자 s를 삽입함
2. 입출력
// input
11
449047 855428 425117 532416 358612 929816 313459 311433 472478 589139 568205
7
I 1 5 400905 139831 966064 336948 119288 I 8 6 436704 702451 762737 557561 810021 771706 I 3 8 389953 706628 552108 238749 661021 498160 493414 377808 I 13 4 237017 301569 243869 252994 I 3 4 408347 618608 822798 370982 I 8 2 424216 356268 I 4 10 512816 992679 693002 835918 768525 949227 628969 521945 839380 479976
// output
#1 449047 400905 139831 408347 512816 992679 693002 835918 768525 949227
3. 코드
import java.io.*;
import java.util.*;
public class swea1228 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = null;
int T = 10;
for(int t = 1; t <= T; t++) {
// 원본 암호문의 길이
int N = Integer.parseInt(br.readLine());
// 원본 암호문
ArrayList<String> origin = new ArrayList<String>();
st = new StringTokenizer(br.readLine());
for(int n = 0; n < N; n++) {
origin.add(st.nextToken());
}
// 명령어의 개수
int C = Integer.parseInt(br.readLine());
// 명령어
st = new StringTokenizer(br.readLine());
for(int n = 0; n < C; n++) {
st.nextToken(); // I
int index = Integer.parseInt(st.nextToken()); // 삽입할 위치
int nums = Integer.parseInt(st.nextToken()); // 삽입할 숫자의 개수
for(int c = 0; c < nums; c++) { // 삽입할 숫자
String temp = st.nextToken();
origin.add(index + c, temp);
}
}
// 출력
System.out.print("#" + t + " ");
for(int i = 0; i < 10; i++) {
System.out.print(origin.get(i) + " ");
}
System.out.println();
}
}
}
실행 결과
4. 회고
1) 원본 암호문을 ArrayList로 정의하여 추가할 명령어를 add로 덧붙이는 방식으로 해결
5. Github
https://github.com/iihye/Algorithm/blob/main/SWEA/swea1228.java
728x90
'CodingTest > SWEA' 카테고리의 다른 글
[SWEA]7699번 수지의 수지 맞는 여행(JAVA) (0) | 2023.08.09 |
---|---|
[SWEA]1952번 수영장(JAVA) (0) | 2023.08.08 |
[SWEA]1209번 Sum(JAVA) (0) | 2023.08.07 |
[SWEA]1247번 최적 경로(JAVA) (0) | 2023.08.07 |
[SWEA]1225번 암호생성기(JAVA) (0) | 2023.08.07 |
Comments