結果
| 問題 |
No.152 貯金箱の消失
|
| コンテスト | |
| ユーザー |
suppy193
|
| 提出日時 | 2015-07-02 11:38:57 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 853 bytes |
| コンパイル時間 | 1,358 ms |
| コンパイル使用メモリ | 24,960 KB |
| 最終ジャッジ日時 | 2025-04-01 04:12:43 |
| 合計ジャッジ時間 | 1,742 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.c: In function 'each_prime':
main.c:28:9: error: C++ style comments are not allowed in ISO C90
28 | //printf("%d\n", flag);
| ^
main.c:28:9: note: (this will be reported only once per input file)
ソースコード
#include <stdio.h>
#include <math.h>
int each_prime(m, n) {
long long int m1;
long long int tmp;
int flag;
if(m < n){
tmp = m;
m = n;
n = tmp;
}
flag = 1;
for(;;){
m1 = m % n;
if(n == 1){
return 1;
}
if(m1 == 0){
return 0;
}
else if(m1 == 1){
return 1;
}
m = n;
n = m1;
}
//printf("%d\n", flag);
//return flag;
}
int main(void) {
long long int m, n, l;
long long int a, b, c;
long long int count;
scanf("%lld", &l);
count = 0;
for(m = 2;m < 2 * sqrt(l / 12);m++){
for(n = 1;n < m;n++){
//printf("%d, %d\n", m, n);
if((m - n) % 2 == 1 && each_prime(m, n) == 1){
a = m * m - n * n;
b = 2 * m * n;
c = m * m + n * n;
if((a + b + c) * 4 <= l){
//printf("%d, %d:(%d, %d, %d)\n", m, n, a, b, c);
count++;
}
}
}
}
printf("%lld\n", count % 1000003);
return 0;
}
suppy193