#include <algorithm>
#include <cmath>
#include <cstring>
#include <string>
#include <vector>
#include <map>
#include <set>
#include <stack>
#include <queue>
#include <cstdio>
#include <iostream>
#define ll long long
using namespace std;
ll m;
bool work(ll n) {
ll sum1=0;
ll sum2=0;
ll t = m;
while (t > 0) {
ll a = n<t?n:t;
sum1 += a;
t -= a;
ll b = t/10;
sum2 += b;
t -= b;
}
return sum1 >= sum2;
}
int main() {
ios::sync_with_stdio(false);
cin >> m;
ll a=1;
ll b = m;
ll res = m;/*
for (ll i = 1; i <= m; i++) {
if (work(i)) {
cout << i << endl;
break;
}
}*/
while (a < b) {
ll n = (a + b) / 2;
if (work(n)) {
res = n<res?n:res;
b = n;
if ((a + b) / 2 == a || (a + b) / 2 == b)
{
if (work(a) && a < res)
res = a;
if (work(b) && b < res)
res = b;
break;
}
continue;
}
else {
a = n;
if ((a + b) / 2 == a || (a + b) / 2 == b)
{
if (work(a) && a < res)
res = a;
if (work(b) && b < res)
res = b;
break;
}
continue;
}
}
cout << res << endl;
return 0;
}
Codeforces Round #491 (Div. 2) C. Candies
最新推荐文章于 2022-04-17 21:18:14 发布