#include int main() { int dataNum = 0; int data[1000]; char str='\0'; // データ数取得 scanf("%d\n", &dataNum); printf("%d\n", dataNum); // 配列初期化 for (int i = 0; i < dataNum + 1; i++) data[i] = 0; // 数値に変換 for (int i = 0; str != '\n'; ) { str = getchar(); if (str == ' ') i++; else if (str >= '0' && str <= '9') data[i] = data[i] * 10 + (int)str - (int)'0'; } // ソート int box = 0; int flg = 0; for (int i = 0;; ) { if (data[i] > data[i + 1]) { box = data[i]; data[i] = data[i + 1]; data[i + 1] = box; flg++; } i++; if (i == dataNum - 1) { if (flg == 0) break; else i = flg = 0; } } // 結果表示 if (dataNum % 2 == 0) printf("%d.%d", ((data[dataNum / 2 - 1] + data[dataNum / 2]) / 2), ((data[dataNum / 2 - 1] + data[dataNum / 2]) % 2 * 10 / 2)); else printf("%d", data[dataNum / 2]); return 0; }