728x90
시간 제한 : 1초
메모리 제한 : 128MB
입력
첫째 줄에 전투의 개수 T가 주어진다. 각 전투는 두 줄로 이루어져 있다. 첫째 줄에 간달프 군대에 참여한 종족의 수가 주어진다. 이 값은 공백으로 구분되어 있으며, 호빗, 인간, 엘프, 드워프, 독수리, 마법사 순서이다. 둘째 줄에는 사우론 군대에 참여한 종족의 수가 주어진다. 이 값 역시 공백으로 구분되어 있으며, 오크, 인간, 워그, 고블린, 우럭하이, 트롤, 마법사 순서이다. 모든 값은 음이 아닌 정수이고, 각 군대의 점수의 합은 32비트 정수 제한을 넘지 않는다.
출력
각 전투에 대해서, "Battle"과 전투 번호를 출력한다. 그 다음에 간달프의 군대가 이긴다면 "Good triumphs over Evil"를, 사우론의 군대가 이긴다면 "Evil eradicates all trace of Good", 점수의 합이 같아 이기는 쪽이 없다면 "No victor on this battle field"를 출력한다.
소스코드
#include <iostream> using namespace std; int main(void) { int t, g, s, gan[6] = { 1,2,3,3,4,10 }, sa[7] = { 1,2, 2,2,3,5,10 }, ganScore, saScore; cin >> t; for (int i = 1; i <= t; i++) { ganScore = saScore = 0; for (int i = 0; i < 6; i++) { cin >> g; ganScore += gan[i] * g; } for (int i = 0; i < 7; i++) { cin >> s; saScore += sa[i] * s; } cout << "Battle " << i << ": "; if (ganScore > saScore) cout << "Good triumphs over Evil\n"; else if (ganScore == saScore) cout << "No victor on this battle field\n"; else cout << "Evil eradicates all trace of Good\n"; } }
Tip
아주 간단한 구현 문제다. 아마 컴파일 하면 i에 대해서 모호하다고 경고를 주긴 할 건데, 작성 당시에 전혀 생각 못한 상태로 빠르게 풀고 제출해서 몰랐다. 코드 상에는 문제가 없다.
728x90
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준] 13752 - 히스토그램(ACM-ICPC Regionals) (0) | 2018.10.17 |
---|---|
백준] 2154 - 수 이어 쓰기3(COCI 2004) (0) | 2018.10.09 |
백준] 1652 - 누울 자리를 찾아라 (0) | 2018.09.23 |
백준] 2246 - 콘도 선정(ACM-ICPC Regionals) (0) | 2018.09.22 |
백준] 2145 - 숫자 놀이(ACM-ICPC Regionals) (0) | 2018.09.08 |