Submission #1816030
Source Code Expand
#include <iostream> #include <iomanip> // << fixed << setprecision(xxx) #include <algorithm> // do { } while ( next_permutation(A, A+xxx) ) ; #include <vector> #include <string> // to_string(nnn) // substr(m, n) // stoi(nnn) #include <complex> #include <tuple> // get<n>(xxx) #include <queue> #include <stack> #include <map> // if (M.find(key) != M.end()) { } #include <set> // S.insert(M); // if (S.find(key) != S.end()) { } // for (auto it=S.begin(); it != S.end(); it++) { } // auto it = S.lower_bound(M); #include <random> // random_device rd; mt19937 mt(rd()); #include <cctype> #include <cassert> #include <cmath> #include <cstdio> #include <cstdlib> // atoi(xxx) using namespace std; #define DEBUG 0 // change 0 -> 1 if we need debug. // insert #if<tab> by my emacs. #if DEBUG == 1 ... #end typedef long long ll; // const int dx[4] = {1, 0, -1, 0}; // const int dy[4] = {0, 1, 0, -1}; // const int C = 1e6+10; // const ll M = 1000000007; int N; ll K; ll w[100010]; ll d[100010]; ll count(int ind, ll x) { if (x < w[ind]) return 0; return (x - w[ind])/d[ind] + 1; } ll count(ll x) { ll ans = 0; for (auto i = 0; i < N; ++i) { ans += count(i, x); } return ans; } ll heikin(ll x, ll y) { ll ans = 0; ll amari = 0; ans += x/2; ans += y/2; amari += x%2; amari += y%2; ans += amari/2; return ans; } int main () { cin >> N >> K; for (auto i = 0; i < N; ++i) { cin >> w[i] >> d[i]; } ll lb = 0; ll ub = 1999999999000000000+10; while (ub - lb > 1) { ll t = heikin(lb, ub); if (count(t) >= K) { ub = t; } else { lb = t; } } cout << ub << endl; }
Submission Info
Submission Time | |
---|---|
Task | C - Garden |
User | kazunetakahashi |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1711 Byte |
Status | AC |
Exec Time | 174 ms |
Memory | 1792 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | a01, a02, a03 |
All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23 |
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 | 174 ms | 1792 KB |
b06 | AC | 159 ms | 1792 KB |
b07 | AC | 171 ms | 1792 KB |
b08 | AC | 172 ms | 1792 KB |
b09 | AC | 171 ms | 1792 KB |
b10 | AC | 171 ms | 1792 KB |
b11 | AC | 130 ms | 1792 KB |
b12 | AC | 116 ms | 1792 KB |
b13 | AC | 114 ms | 1792 KB |
b14 | AC | 118 ms | 1792 KB |
b15 | AC | 112 ms | 1792 KB |
b16 | AC | 113 ms | 1792 KB |
b17 | AC | 115 ms | 1792 KB |
b18 | AC | 121 ms | 1792 KB |
b19 | AC | 101 ms | 1792 KB |
b20 | AC | 104 ms | 1792 KB |
b21 | AC | 108 ms | 1792 KB |
b22 | AC | 113 ms | 1792 KB |
b23 | AC | 128 ms | 1792 KB |