結果

問題 No.275 中央値を求めよ
コンテスト
ユーザー でばら焼肉のたれ
提出日時 2026-08-21 17:12:25
言語 C
(gcc 15.2.0)
コンパイル:
gcc-15 -O2 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
AC  
実行時間 2 ms / 1,000 ms
+ 691µs
コード長 694 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 998 ms
コンパイル使用メモリ 38,784 KB
実行使用メモリ 5,888 KB
最終ジャッジ日時 2026-08-21 17:12:29
合計ジャッジ時間 3,049 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 38
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

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


int main(void)
{
	int n;
	int *p;
	int tmp;
	int i, j;
	double med;
	do {
		scanf("%d", &n);
	} while (n < 1 || n > 1000);

	p = malloc(n * sizeof(int));
	if (p == NULL)
		printf("記憶域の確保に失敗しました。");
	else { 
		for (i = 0; i < n; i++) 
			do {
				scanf("%d", &p[i]);
			} while (p[i] < -1000 || p[i] > 1000);
	}

	j = n;
	do {
		for (i = 0; i < j - 1; i++) {
			if (p[i] > p[i + 1]) {
				tmp = p[i];
				p[i] = p[i + 1];
				p[i + 1] = tmp;
			}
		}
	} while (j--);

	if (n % 2) {
		med = (double)p[n / 2];
	} else
		med = (((double)p[n / 2 - 1] + (double)p[n / 2]) / 2);

	printf("%.1f\n", med);
		
	free(p);

	return 0;
}

0