Submission #993643
Source Code Expand
#include <cstdlib> #include <cmath> #include <climits> #include <cfloat> #include <map> #include <set> #include <iostream> #include <string> #include <vector> #include <algorithm> #include <sstream> #include <complex> #include <stack> #include <queue> #include <cstdio> #include <cstring> #include <iterator> #include <bitset> #include <unordered_set> #include <unordered_map> #include <fstream> #include <iomanip> #include <cassert> //#include <utility> //#include <memory> //#include <functional> //#include <deque> //#include <cctype> //#include <ctime> //#include <numeric> //#include <list> //#include <iomanip> //#if __cplusplus >= 201103L //#include <array> //#include <tuple> //#include <initializer_list> //#include <forward_list> // //#define cauto const auto& //#else //#endif using namespace std; typedef long long ll; typedef pair<int,int> pii; typedef pair<ll,ll> pll; typedef vector<int> vint; typedef vector<vector<int> > vvint; typedef vector<long long> vll, vLL; typedef vector<vector<long long> > vvll, vvLL; #define VV(T) vector<vector< T > > template <class T> void initvv(vector<vector<T> > &v, int a, int b, const T &t = T()){ v.assign(a, vector<T>(b, t)); } template <class F, class T> void convert(const F &f, T &t){ stringstream ss; ss << f; ss >> t; } #undef _P #define _P(...) (void)printf(__VA_ARGS__) #define reep(i,a,b) for(int i=(a);i<(b);++i) #define rep(i,n) reep((i),0,(n)) #define ALL(v) (v).begin(),(v).end() #define PB push_back #define F first #define S second #define mkp make_pair #define RALL(v) (v).rbegin(),(v).rend() #define DEBUG #ifdef DEBUG #define dump(x) cout << #x << " = " << (x) << endl; #define debug(x) cout << #x << " = " << (x) << " (L" << __LINE__ << ")" << " " << __FILE__ << endl; #else #define dump(x) #define debug(x) #endif #define MOD 1000000007LL #define EPS 1e-8 #define INF 0x3f3f3f3f #define INFL 0x3f3f3f3f3f3f3f3fLL #define maxs(x,y) x=max(x,y) #define mins(x,y) x=min(x,y) ll N, A; ll powmod(ll x,ll y){ ll a=1; while(y){ if(y&1) a=a*x%MOD; x=x*x%MOD; y>>=1; } return a; } ll func(ll x){ if(x<0) return INFL; if(x==0){ return N; } ll t = pow(N, 1.0/(x+1)); ll l = 0; ll r = x+1; // cout << t << endl; if(powmod(t+1,x)<N){ t++; } if(powmod(t, x)<N){ while(r-l>1){ // cout << l << " " << r << endl; ll mid = (r+l)/2; if(powmod(t+1,mid)+powmod(t,x+1-mid)>=N){ r=mid; } else{ l=mid; } } } else{ r = 0; } ll ret = (t+1)*r + t*(x+1-r); return ret + A*x; } void mainmain(){ cin>>N>>A; if(N==1){ cout << 1 << endl; return; } ll l = 0; ll r = 1000000; // cout << func(1) << endl; // return; while(r-l>1000){ ll mid1 = l+(r-l)/3; ll mid2 = l+(r-l)*2/3; ll val1 = INFL; ll val2 = INFL; val1 = func(mid1); val2 = func(mid2); // for(ll i = mid1-10;i < mid1+10;i++){ // mins(val1, func(i)); // } // for(ll i = mid2-10;i < mid2+10;i++){ // mins(val2, func(i)); // } if(val1 > val2){ l = mid1; } else{ r = mid2; } } ll ans = INFL; for(ll i = l-10; i < r+10; i++){ mins(ans, func(i)); } cout << ans << endl; } signed main() { ios_base::sync_with_stdio(false); cin.tie(0); cout<<fixed<<setprecision(20); mainmain(); }
Submission Info
Submission Time | |
---|---|
Task | E - Cookies |
User | j_gui0121 |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 3424 Byte |
Status | WA |
Exec Time | 5 ms |
Memory | 384 KB |
Judge Result
Set Name | sample | dataset1 | dataset2 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 500 | 0 / 500 | ||||||||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
sample | sample-01.txt, sample-02.txt, sample-03.txt |
dataset1 | sample-01.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt |
dataset2 | sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, 02-25.txt, 02-26.txt, 02-27.txt, 02-28.txt, 02-29.txt, 02-30.txt, 02-31.txt, 02-32.txt, 02-33.txt, 02-34.txt, 02-35.txt, 02-36.txt, 02-37.txt, 02-38.txt, 02-39.txt, 02-40.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | WA | 5 ms | 384 KB |
01-02.txt | WA | 3 ms | 256 KB |
01-03.txt | WA | 3 ms | 256 KB |
01-04.txt | WA | 3 ms | 256 KB |
01-05.txt | WA | 3 ms | 256 KB |
01-06.txt | WA | 3 ms | 256 KB |
01-07.txt | WA | 3 ms | 256 KB |
01-08.txt | WA | 3 ms | 256 KB |
01-09.txt | WA | 3 ms | 256 KB |
01-10.txt | WA | 3 ms | 256 KB |
01-11.txt | WA | 3 ms | 256 KB |
01-12.txt | WA | 3 ms | 256 KB |
01-13.txt | AC | 3 ms | 256 KB |
01-14.txt | WA | 3 ms | 256 KB |
01-15.txt | WA | 3 ms | 256 KB |
01-16.txt | WA | 3 ms | 256 KB |
01-17.txt | WA | 3 ms | 256 KB |
01-18.txt | WA | 3 ms | 256 KB |
01-19.txt | WA | 3 ms | 256 KB |
01-20.txt | AC | 2 ms | 256 KB |
01-21.txt | AC | 2 ms | 256 KB |
01-22.txt | AC | 3 ms | 256 KB |
01-23.txt | AC | 3 ms | 256 KB |
01-24.txt | AC | 3 ms | 256 KB |
01-25.txt | AC | 3 ms | 256 KB |
01-26.txt | WA | 3 ms | 256 KB |
02-01.txt | AC | 2 ms | 256 KB |
02-02.txt | WA | 3 ms | 256 KB |
02-03.txt | WA | 3 ms | 256 KB |
02-04.txt | WA | 3 ms | 256 KB |
02-05.txt | WA | 3 ms | 256 KB |
02-06.txt | WA | 3 ms | 256 KB |
02-07.txt | WA | 3 ms | 256 KB |
02-08.txt | WA | 3 ms | 256 KB |
02-09.txt | WA | 3 ms | 256 KB |
02-10.txt | WA | 3 ms | 256 KB |
02-11.txt | WA | 3 ms | 256 KB |
02-12.txt | WA | 3 ms | 256 KB |
02-13.txt | WA | 3 ms | 256 KB |
02-14.txt | WA | 3 ms | 256 KB |
02-15.txt | WA | 3 ms | 256 KB |
02-16.txt | WA | 3 ms | 256 KB |
02-17.txt | WA | 3 ms | 256 KB |
02-18.txt | WA | 3 ms | 256 KB |
02-19.txt | WA | 3 ms | 256 KB |
02-20.txt | WA | 3 ms | 256 KB |
02-21.txt | WA | 3 ms | 256 KB |
02-22.txt | WA | 3 ms | 256 KB |
02-23.txt | WA | 3 ms | 256 KB |
02-24.txt | AC | 3 ms | 256 KB |
02-25.txt | WA | 3 ms | 256 KB |
02-26.txt | WA | 3 ms | 256 KB |
02-27.txt | WA | 3 ms | 256 KB |
02-28.txt | WA | 3 ms | 256 KB |
02-29.txt | WA | 3 ms | 256 KB |
02-30.txt | WA | 3 ms | 256 KB |
02-31.txt | WA | 3 ms | 256 KB |
02-32.txt | WA | 3 ms | 256 KB |
02-33.txt | WA | 3 ms | 256 KB |
02-34.txt | WA | 3 ms | 256 KB |
02-35.txt | WA | 3 ms | 256 KB |
02-36.txt | WA | 3 ms | 256 KB |
02-37.txt | WA | 3 ms | 256 KB |
02-38.txt | WA | 3 ms | 256 KB |
02-39.txt | WA | 3 ms | 256 KB |
02-40.txt | WA | 3 ms | 256 KB |
sample-01.txt | WA | 3 ms | 256 KB |
sample-02.txt | AC | 3 ms | 256 KB |
sample-03.txt | WA | 3 ms | 256 KB |