D4 치고는 상당히 쉬운 문제였다.

N을 입력받고(입력 될 수의 수) N개의 수를 입력받는다.

N개의 수를 내림차순으로 sorting 해준 후, N이 홀수이면 중간값을 제곱 해주면 되고, N이 짝수면 처음과 끝을 곱하면 된다.

#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;

int main(int argc, char** argv)
{
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);

	int test_case;
	int T;

	cin >> T;

	for (test_case = 1; test_case <= T; ++test_case)
	{
		int N; cin >> N;
		vector<int> num(N);
		for (int i = 0; i < N; i++) cin >> num[i];

		sort(num.begin(), num.end());

		int out;
		if (N % 2 == 1)
			out = num[N / 2] * num[N / 2];
		else
			out = num[0] * num[N - 1];

		cout << '#' << test_case << ' ' << out << '\n';
	}
	return 0;
}

+ Recent posts