QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#102056 | #4366. Forever Young | fzj2007 | AC ✓ | 52ms | 3512kb | C++14 | 1.8kb | 2023-05-02 11:12:03 | 2023-05-02 11:12:06 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
namespace IO{
template<typename T>inline bool read(T &x){
x=0;
char ch=getchar();
bool flag=0,ret=0;
while(ch<'0'||ch>'9') flag=flag||(ch=='-'),ch=getchar();
while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar(),ret=1;
x=flag?-x:x;
return ret;
}
template<typename T,typename ...Args>inline bool read(T& a,Args& ...args){
return read(a)&&read(args...);
}
template<typename T>void prt(T x){
if(x>9) prt(x/10);
putchar(x%10+'0');
}
template<typename T>inline void put(T x){
if(x<0) putchar('-'),x=-x;
prt(x);
}
template<typename T>inline void put(char ch,T x){
if(x<0) putchar('-'),x=-x;
prt(x);
putchar(ch);
}
template<typename T,typename ...Args>inline void put(T a,Args ...args){
put(a);
put(args...);
}
template<typename T,typename ...Args>inline void put(const char ch,T a,Args ...args){
put(ch,a);
put(ch,args...);
}
inline void put(string s){
for(int i=0,sz=s.length();i<sz;i++) putchar(s[i]);
}
inline void put(const char* s){
for(int i=0,sz=strlen(s);i<sz;i++) putchar(s[i]);
}
}
using namespace IO;
#define int long long
int k,lim,st[25],ans;
inline int calc(int x,int y){
int tp=0;
while(y) st[++tp]=y%10,y/=10;
int res=0;
for(int i=tp;i;i--){
if((__int128)res*x+st[i]>k) return k+1;
res=res*x+st[i];
}
return res;
}
signed main(){
read(k,lim);
for(int i=1000000;i;i--){
int x=k,tp=0,flag=1,val=0;
while(x) st[++tp]=x%i,flag=flag&&(st[tp]<10),x/=i;
while(tp) val=val*10+st[tp],tp--;
if(flag&&val>=lim){
ans=i;
break;
}
}
for(int i=lim;i<=1000;i++){
int l=1,r=k,res=k;
while(l<=r){
int mid=l+r>>1;
if(calc(mid,i)<=k) l=mid+1,res=mid;
else r=mid-1;
}
if(calc(res,i)!=k) continue;
ans=max(ans,res);
}
put('\n',ans);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 13ms
memory: 3336kb
input:
32 20
output:
16
result:
ok single line: '16'
Test #2:
score: 0
Accepted
time: 12ms
memory: 3296kb
input:
2016 100
output:
42
result:
ok single line: '42'
Test #3:
score: 0
Accepted
time: 1ms
memory: 3300kb
input:
1000000000000000000 10
output:
1000000000000000000
result:
ok single line: '1000000000000000000'
Test #4:
score: 0
Accepted
time: 30ms
memory: 3340kb
input:
149239876439186 470
output:
11
result:
ok single line: '11'
Test #5:
score: 0
Accepted
time: 15ms
memory: 3332kb
input:
4851495 95
output:
539054
result:
ok single line: '539054'
Test #6:
score: 0
Accepted
time: 22ms
memory: 3288kb
input:
19839853985 19839853985
output:
10
result:
ok single line: '10'
Test #7:
score: 0
Accepted
time: 1ms
memory: 3504kb
input:
1000000000000000000 17
output:
999999999999999993
result:
ok single line: '999999999999999993'
Test #8:
score: 0
Accepted
time: 3ms
memory: 3388kb
input:
1000000000000000000 23
output:
499999999999999998
result:
ok single line: '499999999999999998'
Test #9:
score: 0
Accepted
time: 0ms
memory: 3336kb
input:
1000000000000000000 58
output:
166666666666666666
result:
ok single line: '166666666666666666'
Test #10:
score: 0
Accepted
time: 2ms
memory: 3344kb
input:
1000000000000000000 145
output:
999999997
result:
ok single line: '999999997'
Test #11:
score: 0
Accepted
time: 0ms
memory: 3484kb
input:
1000000000000000000 230
output:
500000000
result:
ok single line: '500000000'
Test #12:
score: 0
Accepted
time: 0ms
memory: 3288kb
input:
1000000000000000000 1050
output:
999999
result:
ok single line: '999999'
Test #13:
score: 0
Accepted
time: 42ms
memory: 3344kb
input:
1000000000000000000 9593
output:
1000
result:
ok single line: '1000'
Test #14:
score: 0
Accepted
time: 46ms
memory: 3496kb
input:
1000000000000000000 1000000000000000000
output:
10
result:
ok single line: '10'
Test #15:
score: 0
Accepted
time: 43ms
memory: 3508kb
input:
981759819857981583 10
output:
981759819857981583
result:
ok single line: '981759819857981583'
Test #16:
score: 0
Accepted
time: 46ms
memory: 3336kb
input:
981759819857981583 17
output:
981759819857981576
result:
ok single line: '981759819857981576'
Test #17:
score: 0
Accepted
time: 46ms
memory: 3332kb
input:
981759819857981583 23
output:
490879909928990790
result:
ok single line: '490879909928990790'
Test #18:
score: 0
Accepted
time: 43ms
memory: 3392kb
input:
981759819857981583 58
output:
196351963971596315
result:
ok single line: '196351963971596315'
Test #19:
score: 0
Accepted
time: 46ms
memory: 3480kb
input:
981759819857981583 140
output:
10
result:
ok single line: '10'
Test #20:
score: 0
Accepted
time: 46ms
memory: 3488kb
input:
981759819857981583 230
output:
10
result:
ok single line: '10'
Test #21:
score: 0
Accepted
time: 47ms
memory: 3388kb
input:
981759819857981583 1050
output:
10
result:
ok single line: '10'
Test #22:
score: 0
Accepted
time: 46ms
memory: 3388kb
input:
981759819857981583 9593
output:
10
result:
ok single line: '10'
Test #23:
score: 0
Accepted
time: 46ms
memory: 3332kb
input:
981759819857981583 74292
output:
10
result:
ok single line: '10'
Test #24:
score: 0
Accepted
time: 40ms
memory: 3464kb
input:
140986742987698176 10
output:
140986742987698176
result:
ok single line: '140986742987698176'
Test #25:
score: 0
Accepted
time: 41ms
memory: 3460kb
input:
158918593147583853 849
output:
10
result:
ok single line: '10'
Test #26:
score: 0
Accepted
time: 41ms
memory: 3208kb
input:
206808958398095782 82
output:
25851119799761972
result:
ok single line: '25851119799761972'
Test #27:
score: 0
Accepted
time: 47ms
memory: 3284kb
input:
675097804382958295 123
output:
12
result:
ok single line: '12'
Test #28:
score: 0
Accepted
time: 44ms
memory: 3344kb
input:
782891909194182377 95
output:
86987989910464708
result:
ok single line: '86987989910464708'
Test #29:
score: 0
Accepted
time: 44ms
memory: 3284kb
input:
782891909194182377 96
output:
25012
result:
ok single line: '25012'
Test #30:
score: 0
Accepted
time: 45ms
memory: 3388kb
input:
782891909194182377 30000
output:
11
result:
ok single line: '11'
Test #31:
score: 0
Accepted
time: 45ms
memory: 3484kb
input:
988246947114416919 93
output:
109805216346046324
result:
ok single line: '109805216346046324'
Test #32:
score: 0
Accepted
time: 47ms
memory: 3464kb
input:
988246947114416919 95
output:
26512
result:
ok single line: '26512'
Test #33:
score: 0
Accepted
time: 47ms
memory: 3208kb
input:
988246947114416919 29000
output:
10
result:
ok single line: '10'
Test #34:
score: 0
Accepted
time: 32ms
memory: 3296kb
input:
9000630015000129 100
output:
100002
result:
ok single line: '100002'
Test #35:
score: 0
Accepted
time: 46ms
memory: 3280kb
input:
999996640752785561 100
output:
31622
result:
ok single line: '31622'
Test #36:
score: 0
Accepted
time: 9ms
memory: 3332kb
input:
10 10
output:
10
result:
ok single line: '10'
Test #37:
score: 0
Accepted
time: 13ms
memory: 3468kb
input:
11 10
output:
11
result:
ok single line: '11'
Test #38:
score: 0
Accepted
time: 12ms
memory: 3268kb
input:
19 13
output:
16
result:
ok single line: '16'
Test #39:
score: 0
Accepted
time: 3ms
memory: 3296kb
input:
949986743716085769 100
output:
983040
result:
ok single line: '983040'
Test #40:
score: 0
Accepted
time: 13ms
memory: 3336kb
input:
801548868891525129 100
output:
737280
result:
ok single line: '737280'
Test #41:
score: 0
Accepted
time: 13ms
memory: 3348kb
input:
926093549141544969 100
output:
675841
result:
ok single line: '675841'
Test #42:
score: 0
Accepted
time: 25ms
memory: 3332kb
input:
949980220730081289 100
output:
491520
result:
ok single line: '491520'
Test #43:
score: 0
Accepted
time: 28ms
memory: 3292kb
input:
618476800577126409 100
output:
409600
result:
ok single line: '409600'
Test #44:
score: 0
Accepted
time: 45ms
memory: 3464kb
input:
890865346255534089 100
output:
30720
result:
ok single line: '30720'
Test #45:
score: 0
Accepted
time: 52ms
memory: 3332kb
input:
859144460042470409 99
output:
25600
result:
ok single line: '25600'
Test #46:
score: 0
Accepted
time: 45ms
memory: 3468kb
input:
845488492963637769 100
output:
23040
result:
ok single line: '23040'
Test #47:
score: 0
Accepted
time: 45ms
memory: 3336kb
input:
896892642854698249 92
output:
21760
result:
ok single line: '21760'
Test #48:
score: 0
Accepted
time: 41ms
memory: 3292kb
input:
994907428831831689 100
output:
21120
result:
ok single line: '21120'
Test #49:
score: 0
Accepted
time: 45ms
memory: 3488kb
input:
836899046557320969 100
output:
3840
result:
ok single line: '3840'
Test #50:
score: 0
Accepted
time: 1ms
memory: 3280kb
input:
949986743716085769 99
output:
105554082635120640
result:
ok single line: '105554082635120640'
Test #51:
score: 0
Accepted
time: 14ms
memory: 3484kb
input:
801548868891525129 99
output:
89060985432391680
result:
ok single line: '89060985432391680'
Test #52:
score: 0
Accepted
time: 17ms
memory: 3340kb
input:
926093549141544969 99
output:
102899283237949440
result:
ok single line: '102899283237949440'
Test #53:
score: 0
Accepted
time: 21ms
memory: 3484kb
input:
949980220730081289 99
output:
105553357858897920
result:
ok single line: '105553357858897920'
Test #54:
score: 0
Accepted
time: 22ms
memory: 3388kb
input:
618476800577126409 99
output:
68719644508569600
result:
ok single line: '68719644508569600'
Test #55:
score: 0
Accepted
time: 41ms
memory: 3512kb
input:
890865346255534089 99
output:
98985038472837120
result:
ok single line: '98985038472837120'
Test #56:
score: 0
Accepted
time: 44ms
memory: 3344kb
input:
859144460042470409 98
output:
95460495560274489
result:
ok single line: '95460495560274489'
Test #57:
score: 0
Accepted
time: 46ms
memory: 3352kb
input:
845488492963637769 99
output:
93943165884848640
result:
ok single line: '93943165884848640'
Test #58:
score: 0
Accepted
time: 41ms
memory: 3300kb
input:
896892642854698249 91
output:
99654738094966472
result:
ok single line: '99654738094966472'
Test #59:
score: 0
Accepted
time: 45ms
memory: 3488kb
input:
994907428831831689 99
output:
110545269870203520
result:
ok single line: '110545269870203520'
Test #60:
score: 0
Accepted
time: 43ms
memory: 3268kb
input:
836899046557320969 99
output:
92988782950813440
result:
ok single line: '92988782950813440'