celina의 이것저것
[C++] 백준 5576번 - 콘테스트 본문
반응형
문제
최근 온라인에서의 프로그래밍 콘테스트가 열렸다. W 대학과 K 대학의 컴퓨터 클럽은 이전부터 라이벌 관계에있어,이 콘테스트를 이용하여 양자의 우열을 정하자라는 것이되었다.
이번이 두 대학에서 모두 10 명씩이 콘테스트에 참여했다. 긴 논의 끝에 참가한 10 명 중 득점이 높은 사람에서 3 명의 점수를 합산하여 대학의 득점으로하기로 했다.
W 대학 및 K 대학 참가자의 점수 데이터가 주어진다. 이때, 각각의 대학의 점수를 계산하는 프로그램을 작성하라.
입력
입력은 20 행으로 구성된다. 1 번째 줄부터 10 번째 줄에는 W 대학의 각 참가자의 점수를 나타내는 정수가 11 번째 줄부터 20 번째 줄에는 K 대학의 각 참가자의 점수를 나타내는 정수가 적혀있다. 이 정수는 모두 0 이상 100 이하이다.
출력
W 대학 점수와 K 대학의 점수를 순서대로 공백으로 구분하여 출력하라.
접근
또 직접 정렬을 구현하려다가 걍 내장함수를 썼다 문제만 풀면되니까
코드
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <math.h>
#include <cmath>
#include <cstring>
using namespace std;
#define all(x) (x).begin(), (x).end()
int main() {
vector<int> w(10);
vector<int> k(10);
for (int i = 0; i < 10; i++) {
scanf("%d", &w[i]);
}
for (int i = 0; i < 10; i++) {
scanf("%d", &k[i]);
}
sort(all(w));
sort(all(k));
int w_sum = 0;
int k_sum = 0;
for (int i = 7; i < 10; i++) {
w_sum += w[i];
}
for (int i = 7; i < 10; i++) {
k_sum += k[i];
}
printf("%d ", w_sum);
printf("%d", k_sum);
return 0;
}
리뷰
아 처음에 계속 sort부분에서 오류가 나서 뭐지 계속 찾다가 원인을 알았다
지금은 벡터로 풀엇지만 처음엔 배열로 풀엇는데 배열에다가 .begin() 벡터 메소드를 써서 오류가 난거였따
어이없음...ㅋㅋ 벡터로 바꿔줬다
배열로 계속 할거면 sort(w, w+10)이렇게 하면됨
출처
https://www.acmicpc.net/problem/5576
5576번: 콘테스트
최근 온라인에서의 프로그래밍 콘테스트가 열렸다. W 대학과 K 대학의 컴퓨터 클럽은 이전부터 라이벌 관계에있어,이 콘테스트를 이용하여 양자의 우열을 정하자라는 것이되었다. 이번이 두 대
www.acmicpc.net
'자료구조&알고리즘 > 백준' 카테고리의 다른 글
[C++] 백준 15552번 - 빠른 A+B (0) | 2023.03.21 |
---|---|
[C++] 백준 9455번 - 박스 (0) | 2023.03.20 |
[C++] 백준 10814번 - 나이순 정렬 (0) | 2023.03.18 |
[C++] 백준 11050번 - 이항 계수1 (0) | 2023.03.12 |
[C++] 백준 2460번 - 지능형 기차2 (0) | 2023.03.12 |
Comments