結果
問題 |
No.3277 Forever Monotonic Number
|
ユーザー |
![]() |
提出日時 | 2025-09-19 23:03:54 |
言語 | cLay (20241019-1) |
結果 |
AC
|
実行時間 | 131 ms / 4,000 ms |
コード長 | 697 bytes |
コンパイル時間 | 3,463 ms |
コンパイル使用メモリ | 190,412 KB |
実行使用メモリ | 7,720 KB |
最終ジャッジ日時 | 2025-09-19 23:04:12 |
合計ジャッジ時間 | 4,979 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 9 |
ソースコード
#define MD 998244353 int d[150]{}; rep(i,10){ d[i]=1; } rep(i,10,150){ int a=i/100,b=i/10%10,c=i%10; if(a<=b<=c){ d[i]=d[a+b+c]; } } ll@t; rep(t){ ll@n; redo_n: ++n; if(1){ int e[16]; ll nn=n; rep(i,16){ e[i]=nn%10; nn/=10; } ll s=0; bool f=false; rrep(i,15){ if(e[i]<e[i+1]){ f=true; } if(f){ e[i]=e[i+1]; } s+=e[i]; } while(!d[s]){ ll t=0; while(e[t]==9){ ++t; } e[t]+=1; s+=1; while(t--){ e[t]=e[t+1]; s+=e[t]-9; } } if(s>n*9){ goto redo_n; } ll u=0; rrep(i,16){ u=u*10+e[i]; } u-=n; ll a=u/8; ll r=u%8; Mint z=(Mint(10)**n-1)/9+(Mint(10)**a-1)/9*8+Mint(10)**a*r; wt(z); } }