728x90
시간 제한 : 2초
메모리 제한 : 128MB
입력
입력 파일의 첫째 줄에 정수 S1, S2, S3가 주어진다.
출력
출력 파일의 첫째 줄에 가장 높은 빈도로 나오는 세 주사위 합을 구하는 것이다. 단 답이 여러개라면 가장 합이 작은 것을 출력한다.
소스코드
#include <iostream> using namespace std; int main(void) { int s1, s2, s3, arr[81] = { 0, }; cin >> s1 >> s2 >> s3; for (int i = 1; i <= s1; i++) for (int j = 1; j <= s2; j++) for (int k = 1; k <= s3; k++) arr[i + j + k]++; int max = 0, ans = 0; for (int i = 1; i <= 80; i++) if (arr[i] > max) max = arr[i], ans = i; cout << ans; }
Tip
가능한 경우를 모두 카운팅하여 최대값을 구하는 방법으로 문제를 쉽게 풀 수 있다.
728x90
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준] 2145 - 숫자 놀이(ACM-ICPC Regionals) (0) | 2018.09.08 |
---|---|
백준] 2167 - 2차원 배열의 합 (0) | 2018.09.04 |
백준] 2484 - 주사위 네 개(한국정보올림피아드 2010;KOI 2010 지역본선) (0) | 2018.08.26 |
백준] 2857 - FBI(COCI 2010/2011) (0) | 2018.08.19 |
백준] 5704 - 팬그램(ACM-ICPC Regionals) (0) | 2018.08.19 |