반응형
https://www.acmicpc.net/problem/11723
11723번: 집합
첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다.
www.acmicpc.net
[ 문제풀이 ]
크기가 20인 배열을 만들어 각 수의 존재를 기록하고 check명령 시 index로 접근해 존재 유무를 판단해줍니다.
[ 소스코드 ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | #include<iostream> #include<cstring> using namespace std; int M; int arr[21]; int main() { scanf("%d", &M); for (int i = 0; i < M; i++) { char input[10] = { 0 }; int num; scanf("%s", input); if (!strcmp(input, "add")) { scanf("%d", &num); arr[num] = 1; } else if (!strcmp(input, "remove")) { scanf("%d", &num); arr[num] = 0; } else if (!strcmp(input, "check")) { scanf("%d", &num); printf("%d\n", arr[num]); } else if (!strcmp(input, "toggle")) { scanf("%d", &num); if (arr[num] == 1) arr[num] = 0; else arr[num] = 1; } else if (!strcmp(input, "all")) { for (int i = 1; i <= 20; i++) { arr[i] = 1; } } else { for (int i = 1; i <= 20; i++) { arr[i] = 0; } } } } | cs |
반응형
'백준' 카테고리의 다른 글
[ 백준 ] 1107번 - 리모컨 (C++) (0) | 2022.09.20 |
---|---|
[ 백준 ] 1012번 - 유기농 배추 (C++) (0) | 2022.09.19 |
[ 백준 ] 21610번 - 마법사 상어와 비바라기 (C++) (0) | 2022.09.17 |
[ 백준 ] 17779번 - 게리맨더링 2 (C++) (0) | 2022.09.16 |
[ 백준 ] 5373번 - 큐빙 (C++) (0) | 2022.09.15 |