Submission #3567617
Source Code Expand
#include <limits.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
// 内部定数
#define D_ARRAY_MAX 100000 // 最大配列数
// 内部変数
static FILE *szpFpI; // 入力
static int si1AVal[D_ARRAY_MAX]; // 配列A
static int siACnt; // 配列数
// 内部変数 - テスト用
#ifdef D_TEST
static int siRes;
static FILE *szpFpA;
#endif
// 実行メイン
int
fMain(
int piTNo // <I> テスト番号 1~
)
{
int i;
char lc1Buf[1024], lc1Out[1024];
// 入力 - セット
#ifdef D_TEST
sprintf(lc1Buf, ".\\Test\\T%d.txt", piTNo);
szpFpI = fopen(lc1Buf, "r");
sprintf(lc1Buf, ".\\Test\\A%d.txt", piTNo);
szpFpA = fopen(lc1Buf, "r");
siRes = 0;
#else
szpFpI = stdin;
#endif
// 配列数 - 取得
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
sscanf(lc1Buf, "%d", &siACnt);
// 配列A - 取得
for (i = 0; i < siACnt; i++) {
fscanf(szpFpI, "%d", &si1AVal[i]);
}
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
// 配列B - 取得
long long llACnt = 0;
long long llBCnt = 0;
for (i = 0; i < siACnt; i++) {
int liBVal;
fscanf(szpFpI, "%d", &liBVal);
// 差
int liDF = liBVal - si1AVal[i];
// 加算回数
if (liDF <= 0) {
llBCnt -= liDF;
}
else {
llACnt += liDF / 2;
if (liDF % 2 == 1) {
llACnt++;
llBCnt++;
}
}
}
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
// 結果 - セット
if (llACnt >= llBCnt) {
sprintf(lc1Out, "Yes\n");
}
else {
sprintf(lc1Out, "No\n");
}
// 結果 - 表示
#ifdef D_TEST
fgets(lc1Buf, sizeof(lc1Buf), szpFpA);
if (strcmp(lc1Buf, lc1Out)) {
siRes = -1;
}
#else
printf("%s", lc1Out);
#endif
// 残データ有無
#ifdef D_TEST
lc1Buf[0] = '\0';
fgets(lc1Buf, sizeof(lc1Buf), szpFpA);
if (strcmp(lc1Buf, "")) {
siRes = -1;
}
#endif
// テストファイルクローズ
#ifdef D_TEST
fclose(szpFpI);
fclose(szpFpA);
#endif
// テスト結果
#ifdef D_TEST
if (siRes == 0) {
printf("OK %d\n", piTNo);
}
else {
printf("NG %d\n", piTNo);
}
#endif
return 0;
}
int
main()
{
#ifdef D_TEST
int i;
for (i = D_TEST_SNO; i <= D_TEST_ENO; i++) {
fMain(i);
}
#else
fMain(0);
#endif
return 0;
}
Submission Info
Submission Time
2018-11-09 15:04:41+0900
Task
B - Two Arrays
User
asugen0402
Language
C (GCC 5.4.1)
Score
300
Code Size
2339 Byte
Status
AC
Exec Time
3 ms
Memory
256 KB
Compile Error
./Main.c: In function ‘fMain’:
./Main.c:43:2: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
^
./Main.c:48:3: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
fscanf(szpFpI, "%d", &si1AVal[i]);
^
./Main.c:50:2: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
^
./Main.c:57:3: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
fscanf(szpFpI, "%d", &liBVal);
^
./Main.c:74:2: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
fgets(lc1Buf, sizeof(lc1Buf), szpFpI);
^
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
300 / 300
Status
Set Name
Test Cases
Sample
0_000.txt, 0_001.txt, 0_002.txt
All
0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt, 1_023.txt, 1_024.txt, 1_025.txt, 1_026.txt, 1_027.txt
Case Name
Status
Exec Time
Memory
0_000.txt
AC
1 ms
128 KB
0_001.txt
AC
1 ms
128 KB
0_002.txt
AC
1 ms
128 KB
1_003.txt
AC
2 ms
256 KB
1_004.txt
AC
3 ms
256 KB
1_005.txt
AC
3 ms
256 KB
1_006.txt
AC
3 ms
256 KB
1_007.txt
AC
3 ms
256 KB
1_008.txt
AC
3 ms
256 KB
1_009.txt
AC
3 ms
256 KB
1_010.txt
AC
3 ms
256 KB
1_011.txt
AC
3 ms
256 KB
1_012.txt
AC
3 ms
256 KB
1_013.txt
AC
3 ms
256 KB
1_014.txt
AC
3 ms
256 KB
1_015.txt
AC
3 ms
256 KB
1_016.txt
AC
3 ms
256 KB
1_017.txt
AC
3 ms
256 KB
1_018.txt
AC
3 ms
256 KB
1_019.txt
AC
3 ms
256 KB
1_020.txt
AC
3 ms
256 KB
1_021.txt
AC
3 ms
256 KB
1_022.txt
AC
3 ms
256 KB
1_023.txt
AC
3 ms
256 KB
1_024.txt
AC
3 ms
256 KB
1_025.txt
AC
3 ms
256 KB
1_026.txt
AC
3 ms
256 KB
1_027.txt
AC
3 ms
256 KB