Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // main.c
- // boss
- //
- // Created by vasily ukhanov on 22.04.17.
- // Copyright © 2017 vasily ukhanov. All rights reserved.
- //
- #include <stdio.h>
- int scr[200000];
- void job(int dif, int y, int l, int r, int n)
- {
- while ((r - l) > 1)
- {
- int mid = (r + l) / 2;
- int rez = 0;
- for (int i = 0; i < n; i++){
- int z = (scr[i] - y * mid + dif - 1) / dif;
- if (z > 0)
- {
- rez += z;
- }
- else
- {
- rez += 0;
- }
- }
- if (rez > mid)
- {
- l = mid;
- }
- else
- {
- r = mid;
- }
- }
- printf("%d\n", r);
- }
- int main()
- {
- int n, x, y;
- scanf("%d %d %d", &n, &x, &y);
- int i = 0;
- while(i < n)
- {
- scanf("%d",&scr[i++]);
- }
- //scanf(string, &scr);
- if (x == y)
- {
- int maximum = scr[0];
- for (int c = 1; c < n; c++){
- if (scr[c] > maximum) {
- maximum = scr[c];
- }
- }
- printf("%i\n", (maximum + x - 1) / x);
- }
- else
- {
- job(x - y, y, 0, 100000000, n);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement