結果
| 問題 |
No.793 うし数列 2
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-05-07 23:18:28 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 293 bytes |
| コンパイル時間 | 341 ms |
| コンパイル使用メモリ | 20,352 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-01 23:37:32 |
| 合計ジャッジ時間 | 1,286 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 3 WA * 18 |
コンパイルメッセージ
main.c: In function ‘main’:
main.c:5:26: warning: integer overflow in expression of type ‘int’ results in ‘-1294967275’ [-Woverflow]
5 | #define MOD3(x) ((x) % (3*M))
| ^
main.c:15:29: note: in expansion of macro ‘MOD3’
15 | n = MOD3(n * m);
| ^~~~
main.c:5:26: warning: integer overflow in expression of type ‘int’ results in ‘-1294967275’ [-Woverflow]
5 | #define MOD3(x) ((x) % (3*M))
| ^
main.c:16:21: note: in expansion of macro ‘MOD3’
16 | m = MOD3(m * m);
| ^~~~
main.c:10:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
10 | scanf("%lld", &N);
| ^~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#define M 1000000007
#define MOD(x) ((x) % M)
#define MOD3(x) ((x) % (3*M))
int main()
{
long long N;
scanf("%lld", &N);
long long n = 1, m = 10;
for ( ; N; N >>= 1) {
if (N & 1)
n = MOD3(n * m);
m = MOD3(m * m);
}
printf("%lld\n", MOD(4*n/3));
return 0;
}