結果
問題 |
No.736 約比
|
ユーザー |
![]() |
提出日時 | 2019-05-04 16:24:12 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 1 ms / 2,000 ms |
コード長 | 954 bytes |
コンパイル時間 | 450 ms |
コンパイル使用メモリ | 30,336 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-23 01:40:39 |
合計ジャッジ時間 | 2,254 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 65 |
コンパイルメッセージ
main.c: In function 'in': main.c:7:14: warning: implicit declaration of function 'getchar_unlocked' [-Wimplicit-function-declaration] 7 | #define gc() getchar_unlocked() | ^~~~~~~~~~~~~~~~ main.c:16:17: note: in expansion of macro 'gc' 16 | int c = gc(); | ^~ main.c: In function 'out': main.c:8:15: warning: implicit declaration of function 'putchar_unlocked' [-Wimplicit-function-declaration] 8 | #define pc(c) putchar_unlocked(c) | ^~~~~~~~~~~~~~~~ main.c:26:17: note: in expansion of macro 'pc' 26 | if (!n) pc('0'); | ^~
ソースコード
// yukicoder: No.736 約比 // 2019.5.4 bal4u #include <stdio.h> #if 1 #define gc() getchar_unlocked() #define pc(c) putchar_unlocked(c) #else #define gc() getchar() #define pc(c) putchar(c) #endif long long in() // 非負整数の入力 { long long n = 0; int c = gc(); do n = 10 * n + (c & 0xf), c = gc(); while (c >= '0'); return n; } void out(long long n) // 非負整数の表示(出力) { int i; char b[40]; if (!n) pc('0'); else { i = 0; while (n) b[i++] = n % 10 + '0', n /= 10; while (i--) pc(b[i]); } } long long gcd(long long a, long long b) { long long r; while (b != 0) r = a % b, a = b, b = r; return a; } long long a[102]; int N; int main() { int i; long long g; N = (int)in(); for (i = 0; i < N; i++) a[i] = in(); g = gcd(a[0], a[1]); for (i = 2; i < N; i++) g = gcd(a[i], g); if (g > 1) { for (i = 0; i < N; i++) a[i] /= g; } out(a[0]); for (i = 1; i < N; i++) pc(':'), out(a[i]); return 0; }