문제
https://www.acmicpc.net/problem/21918
코드
package com.company;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.sql.Array;
import java.util.Arrays;
import java.util.StringTokenizer;
class Main {
public static void main(String[] args) throws IOException {
int N, M, arr[];
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
StringBuilder sb = new StringBuilder();
N = Integer.parseInt(st.nextToken());
M = Integer.parseInt(st.nextToken());
arr = new int[N+1];
Arrays.fill(arr, -1);
st = new StringTokenizer(br.readLine());
for (int i = 1; i <= N; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
int cmd, a, b;
for (int i = 0; i < M; i++) {
st = new StringTokenizer(br.readLine());
cmd = Integer.parseInt(st.nextToken());
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
switch (cmd){
case 1:
arr[a] = b;
break;
case 2:
for (int j = a; j <= b; j++) {
if(arr[j] == 1)
arr[j] = 0;
else
arr[j] = 1;
}
break;
case 3:
for (int j = a; j <= b; j++) {
arr[j] = 0;
}
break;
case 4:
for (int j = a; j <= b; j++) {
arr[j] = 1;
}
break;
}
}
for (int i = 1; i <= N; i++) {
sb.append(arr[i] + " ");
}
System.out.println(sb.toString());
}
}
풀이
문제에 입력값에 따라서 swtich문을 이용해 천천히 하면 된다.
'백준' 카테고리의 다른 글
백준 2578 빙고 (JAVA) (0) | 2022.07.07 |
---|---|
백준 20546 🐜기적의 매매법🐜 (JAVA) (0) | 2022.07.05 |
백준 5597 과제 안 내신 분..? (JAVA) (0) | 2022.07.05 |
백준 20053 최소,최대2 (JAVA) (0) | 2022.07.05 |
백준 1212 8진수 2진수 (JAVA) (0) | 2022.07.05 |