2021.11.10_7829-보물왕태혁
본문 바로가기
알고리즘 모음집/New 알고리즘

2021.11.10_7829-보물왕태혁

by KyeongMin 2021. 11. 10.
728x90
반응형

소스코드

#include<iostream>
#include<algorithm>
#include<stdio.h>
#include<vector>
using namespace std;
int answer;
int N;
void initData();
void password();
vector<int>num;
int main(int argc, char** argv)
{
	int test_case;
	int T;

	cin >> T;

	for (test_case = 1; test_case <= T; ++test_case)
	{
		initData();
		password();
		printf("#%d %d\n", test_case, answer);
	}
	return 0;//정상종료시 반드시 0을 리턴해야합니다.
}
void initData() {
	num.clear();
	answer = 0;
	N = 0;
	scanf("%d", &N);
	for (int i = 0; i < N; i++) {
		int n = 0;
		scanf("%d",&n);
		num.push_back(n);
	}
	sort(num.begin(), num.end());
}
void password() {
	if (N == 1) {
		answer = num[0] * num[0];
		return;
	}
	if (N % 2 == 0) {
		int mid = N / 2;
		answer = num[mid] * num[mid - 1];
		return;
	}
	else {
		int mid = N / 2;
		answer = num[mid] * num[mid];
	}
}

설계

  • 우선 정렬한다.
  • 정렬해서 중간 위치를 찾는다.
    • 한개인 경우는 자기자신을 곱하면되고
    • 짝수인 경우 mid * mid-1
    • 홀수인 경우 mid * mid 하면됨

실수

  • 실수 없음

문제 링크

7829-보물왕태혁

원본

https://github.com/3DPIT/AlgorithmFinal/blob/main/02.algorithmStudy/004.SW_Expert%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4/2021/11/1110/1.7829-%EB%B3%B4%EB%AC%BC%EC%99%95%ED%83%9C%ED%98%81/2021.11.10_7829-%EB%B3%B4%EB%AC%BC%EC%99%95%ED%83%9C%ED%98%81.md

 

GitHub - 3DPIT/AlgorithmFinal

Contribute to 3DPIT/AlgorithmFinal development by creating an account on GitHub.

github.com

 

728x90
반응형

댓글