結果
問題 | No.148 試験監督(3) |
ユーザー | 👑 hos.lyric |
提出日時 | 2015-02-13 09:50:43 |
言語 | D (dmd 2.106.1) |
結果 |
AC
|
実行時間 | 653 ms / 1,000 ms |
コード長 | 1,190 bytes |
コンパイル時間 | 962 ms |
コンパイル使用メモリ | 109,528 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-12 02:15:49 |
合計ジャッジ時間 | 6,040 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 133 ms
6,816 KB |
testcase_01 | AC | 212 ms
6,940 KB |
testcase_02 | AC | 605 ms
6,944 KB |
testcase_03 | AC | 562 ms
6,940 KB |
testcase_04 | AC | 639 ms
6,944 KB |
testcase_05 | AC | 362 ms
6,940 KB |
testcase_06 | AC | 460 ms
6,944 KB |
testcase_07 | AC | 623 ms
6,940 KB |
testcase_08 | AC | 653 ms
6,944 KB |
testcase_09 | AC | 45 ms
6,940 KB |
testcase_10 | AC | 44 ms
6,940 KB |
testcase_11 | AC | 1 ms
6,944 KB |
ソースコード
import std.bigint,std.conv,std.stdio,std.string;int M=10^^9+7,S=4000000,q;long y,z,a,b,e; void i(long n){y=1;for(e=M-2;e;e/=2,n=n*n%M)if(e&1)y=y*n%M;} void f(int n){ if(n>M/2){ f(M-1-n);i(z);z=n%2?y:M-y; }else{ z=1; if(n%S>S/2){ for(;n%S;)z=z*++n%M; i(z); }else{ for(;n%S;)z=z*n--%M; y=z; } z=0;foreach(j;0..5)z=z<<6| ` !/<4.V.^Y,'%M^!94!^%%=19Q\ #LDG!*&U)R,_QD@;?!1K)(_ 32="G1CPSE+M8OAM<H-A!H9MSMJSL"44EK#P+V3J5D&XA+ZA ,;7J?OUFC(FKYMS9#6R8@W3E4:AS_A%"TTF-I2,HZ7W =1G:7X1@;<.:LQN)>.@!C]7F-4>YT=]K$Y-(7 %\S!30]LA$S];R+K0=A,L2[IH90UC+H^40$^?+-@I+>H1J+7ULGC="&2O"#3:-(OWH#+%A-[^!W)+,G.,.M>=5O'95_5S\P"T\L&[@1I.A6FH%K%^*(&YF!5UI89$PL@N&)(7Z&=+9N($XD\5#XC3KXH4WDXZ3+UCMNI8_OK.[$#DBFKM*)"4^1V;@*5:GTL&%+Z;<+>&1Y^1U0')N%C)G!V*QT<,&R!O2%@<3_@PG3S O02:]PWXZ;0MQX,'4K*G_=Q@768+1X]4P5[O<ZMS+JTE(6!2 MMFX#^OC&WXA8*NIY89\I%\#D;X79ED'ZX#&T'QKOC/IE+;-W)Z_M58*6Y4KX/_.PP<C,>-#R2;03:N?O9&)1<\7:YVC\G!)6]H/Z&M09<==/#:&EL]JV[JX[:7# _,N%Z:F6=HI^&1J!E3KKJ\/,Z@]HKM<=;` [n/S*5+j]-32; z=z*y%M; } } void main(){foreach(t;0..readln.chomp.to!int){ auto s=readln.split;BigInt C=s[0],P=s[1],r=C+1-P,l=r-P;a=0; if(l>=0&&l/M==r/M){ f(r%M);a=z;f(l%M);i(z);a=a*y%M; } a.writeln; }}