結果
問題 | No.152 貯金箱の消失 |
ユーザー |
![]() |
提出日時 | 2015-07-14 08:29:03 |
言語 | C90 (gcc 12.3.0) |
結果 |
AC
|
実行時間 | 20 ms / 5,000 ms |
コード長 | 528 bytes |
コンパイル時間 | 163 ms |
コンパイル使用メモリ | 21,120 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-08 07:06:16 |
合計ジャッジ時間 | 906 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 12 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:19:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 19 | scanf("%d", &L); | ^~~~~~~~~~~~~~~
ソースコード
#include <stdio.h> int gcd( int a, int b){ if(b == 0){ return a; } if(a > b){ return gcd(b,a%b); }else{ return gcd(a,b%a); } } int main(void){ int cnt=0; int L,m,n; scanf("%d", &L); L = L / 4; for(n=1;n<3000;n++){ for(m=n+1;m<3000;m++){ int a,b,c; int g = gcd(n,m); if((m-n)%2==0){continue;} if( g != 1){continue;} a = (m*m-n*n); b = (2*m*n); c = (m*m+n*n); if(a+b+c <= L){ cnt = (cnt+1) % 1000003; }else{ break; } } } printf("%d\n", cnt); return 0; }