Little Jay

[C++] 백준 5054번 주차의 신 본문

알고리즘/BOJ

[C++] 백준 5054번 주차의 신

Jay, Lee 2021. 7. 16. 20:44

문제를 보면 예전에 비문학 지문이 생각나는 문제이다

탐색에 대한 효율적인 알고리즘을 탐색하는 지문이었던 것 같다

찾아보니까 비슷한 흐름인 것 같다

2012년 6월 평가원 문제이다

궁금하다면 아래 참고

그와중에 20년에 알고리즘 문제 그 자체가 나와서 놀랐다

컴공 수시로 가려는 사람한테는 공짜 문제였을 듯

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=magician_e&logNo=220388619293

 

■ 2012년 6월 평가원 비문학 ■ 디스크 스케줄링

비문학 지문 읽는 방법 (가) 하드 디스크는 고속으로 회전하는 디스크의 표면에 데이터를 저장한다. 데이터...

blog.naver.com

각설하고

먼저 최소 거리여야 하니까

벡터로 입력을 받은 후 sort 시켜버리면 오름차순으로 정렬된다

이제 양 옆의 원소를 빼주고 더해주고 마지막엔

다시 되돌아와야하니까 곱하기 2를 해주면 된다

 

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
	int n, m, x;
	cin >> n;
	for (int i = 0; i < n; i++) {
		vector<int> v;
		cin >> m;
		int result = 0;
		for (int k = 0; k < m; k++) {
			cin >> x;
			v.push_back(x);
		}
		sort(v.begin(), v.end());
		for (int k = 0; k < v.size() - 1; k++) {
			result += (v[k + 1] - v[k]);
		}
		cout << result * 2 << "\n";
	}
	return 0;
}

 

'알고리즘 > BOJ' 카테고리의 다른 글

[C++] 백준 15829번 Hashing  (0) 2021.07.18
[C++] 백준 10816번 숫자 카드 2  (0) 2021.07.18
[C++] 백준 9012번 괄호  (0) 2021.07.16
[C++] 백준 1966번 프린터 큐  (0) 2021.07.16
[C++] 백준 1676번 팩토리얼 0의 개수  (0) 2021.06.28
Comments