-
[ 2953 ] 나는 요리사다 - array, vector알고리즘/BOJ 2021. 7. 27. 14:09
< array, vector > - < solve등급 >
[ 2953 ]
나는 요리사다
"나는 요리사다"는 다섯 참가자들이 서로의 요리 실력을 뽐내는 티비 프로이다. 각 참가자는 자신있는 음식을 하나씩 만들어오고, 서로 다른 사람의 음식을 점수로 평가해준다. 점수는 1점부터 5점까지 있다.
각 참가자가 얻은 점수는 다른 사람이 평가해 준 점수의 합이다. 이 쇼의 우승자는 가장 많은 점수를 얻은 사람이 된다.
각 참가자가 얻은 평가 점수가 주어졌을 때, 우승자와 그의 점수를 구하는 프로그램을 작성하시오.
:: 입력
총 다섯 개 줄에 각 참가자가 얻은 네 개의 평가 점수가 공백으로 구분되어 주어진다. 첫 번째 참가자부터 다섯 번째 참가자까지 순서대로 주어진다. 항상 우승자가 유일한 경우만 입력으로 주어진다.
:: 출력
첫째 줄에 우승자의 번호와 그가 얻은 점수를 출력한다.
- try 1
: 점수를 입력받으면서 total에 더해주고 그 값을 max와 비교해서 더 큰 경우 max의 값을 바꿔줌
max를 pair로 만들어서 참가자의 번호도 함께 변경해줌
정답 코드
#include <string> #include <vector> #include <iostream> #include <algorithm> using namespace std; #define endl "\n" int main() { int score[5][4]; pair<int, int> max = {0, 0}; int total = 0; for (int i = 0; i < 5; i++) { total = 0; for (int j = 0; j < 4; j++) { cin >> score[i][j]; total += score[i][j]; } if (total > max.second ) { max.first = i; max.second = total; } } cout << max.first+1 << " " << max.second << endl; }
정답 코드
#include<cstdio> int n, s, m, k, i, j; main() { for (; i < 5; i++) { s = 0; for (j = 0; j < 4; j++) { scanf("%d", &n); s += n; } if (m < s) { m = s; k = i + 1; } } printf("%d %d", k, m) }
'알고리즘 > BOJ' 카테고리의 다른 글
[ 6996 ] 애너그램 - array, vector (0) 2021.07.27 [ 5597 ] 과제 안 내신 분 ..? - array, vector (0) 2021.07.27 [ 2920 ] 음계 - array, vector (0) 2021.07.27 [ 11328 ] Strfry - array, vector (0) 2021.07.26 [ 1919 ] 에너그램 만들기 - array, vector (0) 2021.07.26