Submission #1433600
Source Code Expand
#include <iostream> #define REP(i, a, n) for(int i = ((int) a); i < ((int) n); i++) using namespace std; typedef long long ll; int N; ll A, B, H[100000]; bool ok(ll n) { ll cnt = 0; REP(i, 0, N) if(H[i] > B * n) { cnt += (H[i] - B * n) / (A - B); if((H[i] - B * n) % (A - B) != 0) cnt++; } return cnt <= n; } int main(void) { cin >> N >> A >> B; REP(i, 0, N) cin >> H[i]; ll l = 0, r = 10000000000LL; while(l + 1 < r) { ll m = (l + r) / 2; if(ok(m)) r = m; else l = m; } cout << r << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - Widespread |
User | kshinya |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 567 Byte |
Status | AC |
Exec Time | 69 ms |
Memory | 1024 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 | 47 ms | 1024 KB |
b06 | AC | 69 ms | 1024 KB |
b07 | AC | 56 ms | 1024 KB |
b08 | AC | 55 ms | 1024 KB |
b09 | AC | 43 ms | 1024 KB |
b10 | AC | 43 ms | 1024 KB |
b11 | AC | 46 ms | 1024 KB |
b12 | AC | 46 ms | 1024 KB |
b13 | AC | 64 ms | 1024 KB |