※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 20877번 문제인 Minigolf이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/20877
20877번: Minigolf
En minigolfanläggning har $N$ stycken banor. Varannan bana (udda nummer) är så kallad "par 2" och varannan (jämna nummer) är "par 3", där "par" är det rekommenderade antalet slag en golfspelare ska klara en viss bana på. Det finns också en regel s
www.acmicpc.net
문제 조건에 따라, 홀수번째 홀은 파2, 짝수번째 홀은 파3이고 각 홀의 타수는 7보다 큰 값이면 7로 취급한다.
i번째 홀에서의 타수가 x라고 할 때, 정답 변수를 하나 만들고 i가 홀수일 경우 경기 전체타수에 min(x,7) - 2를, i가 짝수일 경우 경기 전체타수에 min(x,7) - 3을 더해 정답 변수를 출력하는 것으로 문제를 해결할 수 있다.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int N; cin >> N;
int ans = 0;
for (int i = 1; i <= N; i++) {
if (i & 1) ans -= 2;
else ans -= 3;
int x; cin >> x;
ans += min(x, 7);
}
cout << ans;
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 27627 // C++] Splitology (0) | 2023.03.04 |
---|---|
[BOJ 27708 // C++] Antisort (0) | 2023.03.04 |
[BOJ 16485 // C++] 작도하자! - ② (0) | 2023.03.03 |
[BOJ 2616 // C++] 소형기관차 (0) | 2023.03.02 |
[BOJ 2620 // C++] 직각다각형의 면적 구하기 (0) | 2023.03.02 |