๋ฌธ์
ํด๋น ํฌ์คํ ์ ๋ฐฑ์ค์ ๋ฌธ์ ์ด๋ฆ์ ์ ๊ทผ๊ณผ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ค๋ช ํ ๊ธ ์ ๋๋ค.
์ ๋ต ์์ค ์ฝ๋๋ฅผ ํ์ธํ์๋ ค๋ฉด solve url ์์ ํ์ธ ๊ฐ๋ฅํฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ด๋ค ๋ฐฉ์์ผ๋ก ์ ๊ทผํด์ผ ํ๋์ง๋ฅผ ๋จผ์ ์๊ฐํด๋ณด์.
๋ฌธ์ ์ ๊ทผ
์ด๋ฒ ๋ฌธ์ ๋ Java์ Set ์ธํฐํ์ด์ค๋ฅผ ์ด์ฉํ๋ค๋ฉด ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ ๋ฌธ์ ์ด๋ค.
๋ฌธ์ ์์ ์ ๊ณต๋๋ ์ฐ์ฐ๋ค์ด ๋ชจ๋ Set ์ ๊ฐ๋ ๊ณผ ์ผ์นํ๋ ์ฐ์ฐ๋ค์ด ๋๋ถ๋ถ์ด๋ผ์ HashSet ์ ์ด์ฉํด์ ๋ฌธ์ ๋ฅผ ํ์๋ค.
ํด๊ฒฐ๋ฒ
์ฐ์ฐ์ ๋ฐ๋ฅธ ๋ฉ์๋๋ฅผ ์์ฑํ๊ณ HashSet ์ฐ์ฐ์ ๋์ ์คํ์์ผ์ฃผ๋ ๋ฐฉํฅ์ผ๋ก ๊ตฌํํ๋ค
์ ๋ต ์ฝ๋
import java.io.*;
import java.util.HashSet;
import java.util.Set;
import java.util.stream.IntStream;
import java.util.stream.Stream;
public class Main {
private static Set<Integer> set = new HashSet<>();
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int loop = Integer.parseInt(br.readLine());
while(loop-- > 0) {
String[] operators = br.readLine().split(" ");
String operator = operators[0];
if(operators.length != 1) {
int operand = Integer.parseInt(operators[1]);
switch(operator) {
case "add" :
add(operand);
break;
case "remove":
remove(operand);
break;
case "check":
bw.write(check(operand) + "\n");
break;
case "toggle":
toggle(operand);
break;
default:
break;
}
}else {
switch(operator) {
case "all":
all();
break;
case "empty":
empty();
break;
default:
break;
}
}
}
bw.flush();
bw.close();
}
private static void add(int value) {
set.add(value);
}
private static void remove(int value) {
if(set.contains(value)) set.remove(value);
}
private static int check(int value) {
if(set.contains(value)) return 1;
else return 0;
}
private static void toggle(int value) {
if(set.contains(value)) {
remove(value);
}else {
add(value);
}
}
private static void all() {
IntStream.range(1, 21).forEach(i -> add(i));
}
private static void empty() {
set.clear();
}
}
๋๊ธ