結果

問題 No.406 鴨等間隔の法則
ユーザー bal4u
提出日時 2019-04-16 06:50:59
言語 C
(gcc 8.2.0)
結果
AC  
実行時間 19 ms
コード長 687 Byte
コンパイル時間 72 ms
使用メモリ 1,284 KB
最終ジャッジ日時 2019-06-05 20:55:31

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
sample_01.txt AC 1 ms
968 KB
sample_02.txt AC 1 ms
968 KB
sample_03.txt AC 0 ms
968 KB
system_test1.txt AC 17 ms
1,248 KB
system_test2.txt AC 7 ms
964 KB
system_test3.txt AC 8 ms
964 KB
system_test4.txt AC 8 ms
968 KB
system_test5.txt AC 17 ms
1,244 KB
system_test6.txt AC 18 ms
1,280 KB
system_test7.txt AC 9 ms
968 KB
system_test8.txt AC 14 ms
1,196 KB
system_test9.txt AC 11 ms
968 KB
system_test10.txt AC 9 ms
964 KB
system_test11.txt AC 16 ms
1,216 KB
test_a_small_01.txt AC 2 ms
968 KB
test_a_small_02.txt AC 2 ms
972 KB
test_a_small_03.txt AC 2 ms
968 KB
test_a_small_04.txt AC 2 ms
968 KB
test_a_small_05.txt AC 3 ms
968 KB
test_b_medium_01.txt AC 4 ms
968 KB
test_b_medium_02.txt AC 4 ms
968 KB
test_b_medium_03.txt AC 5 ms
968 KB
test_b_medium_04.txt AC 11 ms
968 KB
test_b_medium_05.txt AC 14 ms
1,176 KB
test_c_large_01.txt AC 19 ms
1,284 KB
test_c_large_02.txt AC 19 ms
1,284 KB
test_c_large_03.txt AC 9 ms
1,052 KB
test_c_large_04.txt AC 9 ms
1,284 KB
test_c_large_05.txt AC 19 ms
1,284 KB
test_c_large_06.txt AC 18 ms
1,276 KB
test_c_large_07.txt AC 18 ms
1,268 KB
テストケース一括ダウンロード
コンパイルメッセージ
main.c: 関数 ‘in’ 内:
main.c:9:14: 警告: 関数 ‘getchar_unlocked’ の暗黙的な宣言です [-Wimplicit-function-declaration]
 #define gc() getchar_unlocked()
              ^~~~~~~~~~~~~~~~
main.c:16:17: 備考: in expansion of macro ‘gc’
  int n = 0, c = gc();
                 ^~

ソースコード

diff #
// yukicoder: No.406 鴨等間隔の法則
// 2019.4.16 bal4u

#include <stdio.h>
#include <stdlib.h>

//// 高速入力
#if 1
#define gc() getchar_unlocked()
#else
#define gc() getchar()
#endif

int in()    // 非負整数の入力
{
	int n = 0, c = gc();
	do n = 10 * n + (c & 0xf), c = gc(); while (c >= '0');
	return n;
}

int N;
int x[100005];

int cmp(const void *a, const void *b) {	return *(int *)a - *(int *)b; }

int main()
{
	int i, d;

	N = in();
	for (i = 0; i < N; i++) x[i] = in();
	qsort(x, N, sizeof(int), cmp);
	d = x[1] - x[0]; 
	if (d == 0) puts("NO");
	else {
		for (i = 2; i < N; i++) if (x[i] - x[i - 1] != d) break;
		puts(i >= N ? "YES" : "NO");
	}
	return 0;
}
0