結果

問題 No.1049 Zero (Exhaust)
ユーザー MiKo_IZUMIMiKo_IZUMI
提出日時 2020-05-08 22:55:37
言語 C
(gcc 12.3.0)
結果
AC  
実行時間 11 ms / 2,000 ms
コード長 651 bytes
コンパイル時間 208 ms
コンパイル使用メモリ 31,616 KB
実行使用メモリ 17,420 KB
最終ジャッジ日時 2024-07-04 01:06:33
合計ジャッジ時間 1,184 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
6,816 KB
testcase_01 AC 1 ms
6,940 KB
testcase_02 AC 1 ms
6,940 KB
testcase_03 AC 9 ms
12,364 KB
testcase_04 AC 1 ms
6,944 KB
testcase_05 AC 7 ms
10,496 KB
testcase_06 AC 11 ms
17,420 KB
testcase_07 AC 3 ms
6,944 KB
testcase_08 AC 5 ms
6,940 KB
testcase_09 AC 9 ms
13,536 KB
testcase_10 AC 10 ms
14,480 KB
testcase_11 AC 11 ms
14,588 KB
testcase_12 AC 10 ms
16,532 KB
testcase_13 AC 4 ms
6,940 KB
testcase_14 AC 6 ms
8,320 KB
testcase_15 AC 9 ms
12,636 KB
testcase_16 AC 8 ms
10,468 KB
testcase_17 AC 7 ms
11,044 KB
testcase_18 AC 11 ms
14,828 KB
testcase_19 AC 8 ms
12,664 KB
testcase_20 AC 4 ms
6,940 KB
testcase_21 AC 10 ms
12,996 KB
testcase_22 AC 6 ms
8,164 KB
testcase_23 AC 10 ms
17,320 KB
testcase_24 AC 11 ms
17,304 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
typedef long long ll;

int main()
{

    int p,k;
    scanf("%d %d",&p,&k);

    if(k==1)
    {
        printf("%d\n",p+1);
    }
    else
    {
    

    ll zero[k],nonzero[k];

    zero[0]=p+1;
    nonzero[0]=p-1;

    for(int i=1;i<k-1;i++)
    {
        zero[i]=(zero[i-1]*(p+1))+(nonzero[i-1]*2);
        nonzero[i]=(zero[i-1]*(p-1))+(nonzero[i-1]*(2*p-2));
        zero[i]=zero[i]%1000000007;
        nonzero[i]=nonzero[i]%1000000007;
    }

    ll ans;
    ans=(zero[k-2]*(p+1))+(nonzero[k-2]*2);
    ans=ans%1000000007;

    printf("%lld\n",ans);

    }

    return 0;
}
0