Submission #3052034


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									// 最大配列数

#ifdef D_TEST
	static int siRes;
	static FILE *szpFpT, *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);
	szpFpT = fopen(lc1Buf, "r");
	sprintf(lc1Buf, ".\\Test\\A%d.txt", piTNo);
	szpFpA = fopen(lc1Buf, "r");
	siRes = 0;
#endif

	// 配列数取得
	int liACnt;
#ifdef D_TEST
	fgets(lc1Buf, sizeof(lc1Buf), szpFpT);
#else
	fgets(lc1Buf, sizeof(lc1Buf), stdin);
#endif
	sscanf(lc1Buf, "%d", &liACnt);

	// 配列取得
	int li1Array[D_ARRAY_MAX + 5];
	for (i = 0; i < liACnt; i++) {
#ifdef D_TEST
		fscanf(szpFpT, "%d", &li1Array[i]);
#else
		fscanf(stdin, "%d", &li1Array[i]);
#endif
	}
#ifdef D_TEST
	fgets(lc1Buf, sizeof(lc1Buf), szpFpT);
#else
	fgets(lc1Buf, sizeof(lc1Buf), stdin);
#endif

	// 番兵追加
	li1Array[liACnt] = -1;

	// 算出
	long long llSum = 0;
	int liLen = 1;
	for (i = 0; i < liACnt; i++) {
		if (li1Array[i] < li1Array[i + 1]) {	// 単調増加
			liLen++;
		}
		else {									// 単調増加ではない
			llSum += (long long)liLen * (long long)(liLen + 1) / (long long)2;
			liLen = 1;
		}
	}

	// 結果セット
	sprintf(lc1Out, "%lld\n", llSum);

	// 結果表示
#ifdef D_TEST
	fgets(lc1Buf, sizeof(lc1Buf), szpFpA);
	if (strcmp(lc1Buf, lc1Out)) {
		siRes = -1;
	}
#else
	printf("%s", lc1Out);
#endif

	// テストファイルクローズ
#ifdef D_TEST
	fclose(szpFpT);
	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
Task C - 単調増加
User asugen0402
Language C (GCC 5.4.1)
Score 100
Code Size 2106 Byte
Status AC
Exec Time 12 ms
Memory 640 KB

Compile Error

./Main.c: In function ‘fMain’:
./Main.c:39:2: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets(lc1Buf, sizeof(lc1Buf), stdin);
  ^
./Main.c:49:3: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result]
   fscanf(stdin, "%d", &li1Array[i]);
   ^
./Main.c:55:2: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
  fgets(lc1Buf, sizeof(lc1Buf), stdin);
  ^

Judge Result

Set Name Sample Subtask0 All
Score / Max Score 0 / 0 40 / 40 60 / 60
Status
AC × 4
AC × 19
AC × 35
Set Name Test Cases
Sample sample0.txt, sample1.txt, sample2.txt, sample3.txt
Subtask0 sample0.txt, sample1.txt, sample2.txt, sample3.txt, subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt
All sample0.txt, sample1.txt, sample2.txt, sample3.txt, subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
Case Name Status Exec Time Memory
sample0.txt AC 1 ms 128 KB
sample1.txt AC 1 ms 128 KB
sample2.txt AC 1 ms 128 KB
sample3.txt AC 1 ms 128 KB
subtask0_0.txt AC 1 ms 128 KB
subtask0_1.txt AC 1 ms 128 KB
subtask0_10.txt AC 1 ms 128 KB
subtask0_11.txt AC 1 ms 128 KB
subtask0_12.txt AC 1 ms 128 KB
subtask0_13.txt AC 1 ms 128 KB
subtask0_14.txt AC 1 ms 128 KB
subtask0_2.txt AC 1 ms 128 KB
subtask0_3.txt AC 1 ms 128 KB
subtask0_4.txt AC 1 ms 128 KB
subtask0_5.txt AC 1 ms 128 KB
subtask0_6.txt AC 1 ms 128 KB
subtask0_7.txt AC 1 ms 128 KB
subtask0_8.txt AC 1 ms 128 KB
subtask0_9.txt AC 1 ms 128 KB
subtask1_0.txt AC 9 ms 512 KB
subtask1_1.txt AC 4 ms 256 KB
subtask1_10.txt AC 10 ms 512 KB
subtask1_11.txt AC 10 ms 512 KB
subtask1_12.txt AC 10 ms 512 KB
subtask1_13.txt AC 10 ms 512 KB
subtask1_14.txt AC 10 ms 512 KB
subtask1_15.txt AC 12 ms 640 KB
subtask1_2.txt AC 3 ms 256 KB
subtask1_3.txt AC 7 ms 384 KB
subtask1_4.txt AC 8 ms 512 KB
subtask1_5.txt AC 7 ms 384 KB
subtask1_6.txt AC 4 ms 384 KB
subtask1_7.txt AC 9 ms 512 KB
subtask1_8.txt AC 3 ms 256 KB
subtask1_9.txt AC 2 ms 256 KB