QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#725625 | #6694. Math Problem | frogman | TL | 58ms | 3844kb | C++14 | 849b | 2024-11-08 19:08:12 | 2024-11-08 19:08:13 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
inline __int128 read(){
int x=0;
char ch=getchar();
while(!isdigit(ch)){
ch=getchar();
}
while(isdigit(ch)){
x=x*10+ch-'0';
ch=getchar();
}
return x;
}
void out(__int128 x){
if(x>9){
out(x/10);
}
putchar(x%10+'0');
}
inline void solve(){
__int128 n,k,m,a,b;
n=read();k=read();m=read();a=read();b=read();
if(n%m==0){
cout<<"0\n";
return;
}
if(k==1){
cout<<"-1\n";
return;
}
__int128 ans=4e18;
__int128 s=0;
while(n){
__int128 now=s;
__int128 x=n,y=n;
if(n%m==0){
ans=min(ans,now);
}
while(y<2e18){
now+=a;
x*=k;y=y*k+k-1;
if(y/m-(x-1)/m){
ans=min(ans,now);
}
}
n/=k;
s+=b;
}
ans=min(ans,s);
out(ans);
cout<<'\n';
}
int main(){
int T;
cin>>T;
while(T--){
solve();
}
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3540kb
input:
4 101 4 207 3 5 8 3 16 100 1 114 514 19 19 810 1 1 3 1 1
output:
11 2 0 -1
result:
ok 4 number(s): "11 2 0 -1"
Test #2:
score: 0
Accepted
time: 58ms
memory: 3600kb
input:
100000 9 5 7 7674 78731 4 3 4 58482 93736 1 4 3 42396 22960 6 2 2 4534 73466 5 7 7 56203 19376 1 7 10 77129 84094 8 3 3 72793 89258 10 10 3 94847 42455 7 4 7 79273 90760 2 7 3 78496 99140 4 4 9 47018 14651 3 7 8 60936 4453 8 6 4 57267 6293 8 7 3 81697 99664 2 10 10 3935 30951 8 9 7 91391 70670 5 8 8...
output:
7674 0 22960 0 19376 77129 72793 84910 0 78496 29302 4453 0 81697 3935 70670 36522 21244 0 0 0 100934 30063 0 57852 31894 72016 6193 9486 2516 27536 0 7306 73625 11302 13802 41343 50014 58015 38743 65165 38963 26747 0 42044 45733 63574 69321 34196 1674 27200 8130 0 46609 53621 11696 7808 4630 10051 ...
result:
ok 100000 numbers
Test #3:
score: 0
Accepted
time: 47ms
memory: 3832kb
input:
100000 72 56 61 725468539 908406897 78 7 86 485275009 977836982 25 57 29 104624183 334780226 48 74 44 805881518 26082346 87 26 31 224468594 59732782 55 29 99 697738785 876206855 96 85 8 998474252 490312988 11 22 7 298977007 759215221 43 72 22 785798936 836075792 16 16 29 304049814 445858780 86 24 36...
output:
725468539 970550018 104624183 26082346 119465564 1395477570 0 298977007 785798936 304049814 488620044 1112696878 150581202 929490259 258912618 156420265 767475208 623063452 158730933 211070701 576023224 525233 66950902 893398127 1538977472 552877592 365438928 274813702 347240596 413914126 411352478 ...
result:
ok 100000 numbers
Test #4:
score: 0
Accepted
time: 37ms
memory: 3484kb
input:
100000 151 859 413 113296245 501509373 721 797 951 199093180 857704079 864 743 424 944343390 211412511 537 561 510 160063507 371248812 67 101 1000 982073931 983924207 224 620 106 988167382 31695532 388 496 373 179680114 906477657 463 865 318 568083479 906936536 409 549 816 183391318 716459594 871 83...
output:
113296245 199093180 422825022 160063507 983924207 31695532 179680114 568083479 366782636 353991726 424999871 270298556 845830412 171200301 342928747 708513732 1071693358 495915588 91647563 423066800 629029877 532122044 903837970 923069546 30892184 342614734 344281675 92814148 8303547 371747405 58158...
result:
ok 100000 numbers
Test #5:
score: 0
Accepted
time: 33ms
memory: 3536kb
input:
100000 4630 2977 9157 920976948 319551315 2827 5918 444 915741308 428850012 1830 2194 1995 883906440 695946422 3495 431 7000 831459352 331879489 6334 6866 3180 554770772 999524518 4394 865 2622 462975016 317225012 7146 2059 5206 338704464 650075526 7269 9699 7065 508253316 136145466 3717 9832 5501 1...
output:
639102630 428850012 695946422 663758978 554770772 634450024 677408928 136145466 138804545 86246388 654932853 233406504 158977692 141890698 149668965 289533426 536659273 578882913 234405244 160427375 155168698 546646968 5900866 186185047 30363396 93724506 330946208 71156738 151777321 386435297 166234...
result:
ok 100000 numbers
Test #6:
score: 0
Accepted
time: 31ms
memory: 3844kb
input:
100000 73249682 47619910 55116647 128554518 478392703 63789277 1414550 48229272 250747189 997808121 68243990 71103259 14595028 337838604 410310513 43474969 8461967 37722317 943841593 58972601 79052007 22427901 46110814 619079500 877950428 36298374 69387929 88793453 605131681 357216829 87609669 84382...
output:
257109036 501494378 337838604 117945202 1238159000 357216829 370639522 674316525 166433196 141880926 63179079 654049210 156730406 551517649 735314262 181349794 451156077 565079747 625657717 257899254 1205898584 736860320 436887048 555501015 634904039 720592503 12278164 173702793 193363767 979933288 ...
result:
ok 100000 numbers
Test #7:
score: -100
Time Limit Exceeded
input:
100000 3464647282669819 76909462 18457991 390212875 487173929 4650003301142948 58807432 33266940 719515794 957413208 3623051027558998 54952606 51934480 131325868 905272434 2157584874927409 3499113 70686381 77518537 690462406 33017219084855 33767393 38574619 740268825 282227083 8188451643953574 58134...