시간을 기준으로 1초씩 진행하며 구한다.
현재 시간을 먹는 시간으로 나누었을 때 나누어 떨어지면 그때 그 사람이 소보루를 집어드므로 sum을 ++해준다.
해주다가 먹은 소보루의 수와 같아지면 그때의 사람을 출력하면 된다.
그냥 다 해보면 된다.
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 | #include <stdio.h> #include <algorithm> using namespace std; int arr[100005]; int n, s; int m; int main(void) { scanf("%d %d", &n, &s); scanf("%d", &m); for (int i = 0; i < m; i++) { scanf("%d", &arr[i]); } int sum = 0; for (int t = 0; t < 1000000; t++) { for (int i = 0; i < m; i++) { if (t % arr[i] == 0) { sum++; if (sum >= n - s) { printf("%d", i+1); return 0; } } } } } | cs |
'알고리즘 > PS' 카테고리의 다른 글
[백준 14675] 단절점과 단절선 (0) | 2018.05.26 |
---|---|
[백준 12840] 창용이의 시계 (0) | 2018.05.23 |
[백준 12841] 정보대 등산 (0) | 2018.05.23 |
[백준 14656] 조교는 새디스트야!! (0) | 2018.05.21 |
[백준 14655] 욱제는 도박쟁이야!! (0) | 2018.05.21 |