結果
問題 |
No.275 中央値を求めよ
|
ユーザー |
|
提出日時 | 2024-05-27 17:49:55 |
言語 | C (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,074 bytes |
コンパイル時間 | 343 ms |
コンパイル使用メモリ | 30,848 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-12-20 20:34:15 |
合計ジャッジ時間 | 2,411 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 3 |
other | AC * 6 WA * 30 RE * 2 |
ソースコード
#include <stdio.h> #include <stdlib.h> #include <stdint.h> int main ( void ) { uint16_t n, i, n_half; int16_t a[1000], sort_temp; int16_t sort_min, sort_max; uint16_t sort_min_index, sort_max_index; uint16_t sorted = 0u; scanf("%d", &n); for ( i = 0u; i < n; i++ ) { scanf("%d", &a[i]); } n_half = n / 2; while ( sorted < n_half ) { sort_min = 1000; sort_max = -1000; for ( i = sorted; i < n; i++ ) { if ( sort_min > a[i] ) { sort_min = a[i]; sort_min_index = i; } if ( sort_max < a[i] ) { sort_max = a[i]; sort_max_index = i; } } sort_temp = a[sort_min_index]; a[sort_min_index] = a[sorted]; a[sorted] = sort_temp; sort_temp = a[sort_max_index]; a[sort_max_index] = a[n - 1 - sorted]; a[n - 1 - sorted] = sort_temp; sorted ++; } for ( i = 0; i < n; i++ ) { if ( i > 0 ) { fprintf(stderr, ", "); } fprintf(stderr, "%d", a[i]); } fprintf(stderr, "\n"); if ( n % 2 ) { printf("%d\n", a[n_half]); } else { printf("%.1f\n", ((float)a[n_half] + (float)a[n_half - 1]) / 2); } return 0; }