Submission #3247078
Source Code Expand
#include<iostream> #include<algorithm> using namespace std; using ll = long long; int main() { int n, a, b; cin >> n >> a >> b; int h[n]; for (int i = 0;i < n;i++)cin >> h[i]; sort(h, h + n); ll right = h[n - 1], left = 0; while (right - left > 1) { ll mid = (right + left) / 2; ll sum = 0; for (int i = 0;i < n;i++) { if (h[i] > b*mid) { if ((h[i] - b * mid) % (a - b) == 0)sum += (h[i] - b * mid) / (a - b); else sum += (h[i] - b * mid) / (a - b) + 1; } } if (sum > mid) { left = mid; } else { right = mid; } } cout << right << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - Widespread |
User | mine691 |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 612 Byte |
Status | AC |
Exec Time | 92 ms |
Memory | 640 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | a01, a02, a03 |
All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
a01 | AC | 1 ms | 256 KB |
a02 | AC | 1 ms | 256 KB |
a03 | AC | 1 ms | 256 KB |
b04 | AC | 1 ms | 256 KB |
b05 | AC | 61 ms | 640 KB |
b06 | AC | 92 ms | 640 KB |
b07 | AC | 72 ms | 640 KB |
b08 | AC | 69 ms | 640 KB |
b09 | AC | 63 ms | 640 KB |
b10 | AC | 61 ms | 640 KB |
b11 | AC | 62 ms | 640 KB |
b12 | AC | 62 ms | 640 KB |
b13 | AC | 83 ms | 640 KB |