728x90
https://www.acmicpc.net/problem/1813
문제의 아이디어
brute force 카테고리의 문제이니만큼 무식하게 for문을 돌린다.
"n개의 말이 참이다." 가 전체 N개 중에 n개만큼 존재하면 n개의 말이 참이 된다.
깨달은 점
딱히 새로운 부분은 없는 문제.
cin 와 printf 병행 불가 문제에 대해 더 알아봐야 겠다. 이 경우 printf,scanf의 시간이 더 적게 소모되는지 알아볼 필요가 있다.
코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <iostream> using namespace std; int arr[100000] = { 0 }; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int N, n; scanf("%d", &N); for (int i = 0; i < N; i++) { scanf("%d", &n); arr[n]++; } for (int i = N; i>=0; i--) { if (arr[i] == i) { cout << i; return 0; } } cout <<"-1"; return 0; } | cs |
'프로그래밍 > programmers&bj' 카테고리의 다른 글
[C++][알고리즘] 백준 16395번 파스칼의 삼각형 (0) | 2019.09.22 |
---|---|
[C++][알고리즘] 프로그래머스:: 예산 (0) | 2019.09.10 |
[C++][알고리즘] 백준 2346번 풍선터트리기 (0) | 2019.09.01 |
[C++][알고리즘] 백준 14215번 볼링점수계산 (0) | 2019.08.28 |
[C++][알고리즘] 프로그래머스::타깃넘버 (0) | 2019.08.24 |