Submission #1164988
Source Code Expand
#include <cstdio> #include <cstdint> #include <algorithm> #include <vector> int64_t modinv(int64_t b, int64_t mod) { int64_t n=1, k=b%mod, p=mod-2; while (p) { if (p & 1) (n *= k) %= mod; (k *= k) %= mod; p >>= 1; } return n; } int64_t mod_choose(int64_t n, int64_t k, int64_t mod) { int64_t c=1; for (int64_t i=n%mod+1, j=k+1; (--i && --j);) { (c *= i) %= mod; (c *= modinv(j, mod)) %= mod; } return c; } int main() { int n, k; scanf("%d %d", &n, &k); printf("%lld\n", mod_choose(n+k-1, n-1, 1e9+7)); return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 多重ループ |
User | rsk0315 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 656 Byte |
Status | AC |
Exec Time | 57 ms |
Memory | 128 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:33:51: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 2 has type ‘int64_t {aka long int}’ [-Wformat=] printf("%lld\n", mod_choose(n+k-1, n-1, 1e9+7)); ^ ./Main.cpp:31:27: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d", &n, &k); ^
Judge Result
Set Name | Sample | Subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 99 / 99 | 1 / 1 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.txt |
Subtask1 | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 1 ms | 128 KB |
subtask0_sample_02.txt | AC | 1 ms | 128 KB |
subtask0_sample_03.txt | AC | 1 ms | 128 KB |
subtask0_sample_04.txt | AC | 1 ms | 128 KB |
subtask0_sample_05.txt | AC | 57 ms | 128 KB |
subtask1_01.txt | AC | 1 ms | 128 KB |
subtask1_02.txt | AC | 1 ms | 128 KB |
subtask1_03.txt | AC | 1 ms | 128 KB |
subtask1_04.txt | AC | 1 ms | 128 KB |
subtask1_05.txt | AC | 1 ms | 128 KB |
subtask1_06.txt | AC | 1 ms | 128 KB |
subtask1_07.txt | AC | 1 ms | 128 KB |
subtask1_08.txt | AC | 1 ms | 128 KB |
subtask1_09.txt | AC | 1 ms | 128 KB |
subtask1_10.txt | AC | 1 ms | 128 KB |
subtask1_11.txt | AC | 1 ms | 128 KB |
subtask1_12.txt | AC | 1 ms | 128 KB |
subtask1_13.txt | AC | 1 ms | 128 KB |
subtask1_14.txt | AC | 1 ms | 128 KB |
subtask1_15.txt | AC | 1 ms | 128 KB |
subtask1_16.txt | AC | 1 ms | 128 KB |
subtask1_17.txt | AC | 1 ms | 128 KB |
subtask1_18.txt | AC | 1 ms | 128 KB |
subtask1_19.txt | AC | 1 ms | 128 KB |
subtask2_02.txt | AC | 12 ms | 128 KB |
subtask2_03.txt | AC | 57 ms | 128 KB |
subtask2_04.txt | AC | 26 ms | 128 KB |
subtask2_05.txt | AC | 49 ms | 128 KB |
subtask2_06.txt | AC | 15 ms | 128 KB |
subtask2_07.txt | AC | 57 ms | 128 KB |
subtask2_08.txt | AC | 57 ms | 128 KB |
subtask2_09.txt | AC | 1 ms | 128 KB |
subtask2_10.txt | AC | 57 ms | 128 KB |