※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 27285번 문제인 点数 (Score)이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/27330
27330번: 点数 (Score)
長さ N の整数列 A = (A1, A2, …, AN) と長さ M の整数列 B = (B1, B2, …, BM) が与えられる. あなたはこれらの数列を用いてゲームを行う.最初,このゲームの点数は 0 である. このゲームでは N 回
www.acmicpc.net
문제에서 주어지는 점수 계산과정을 그대로 시뮬레이션해 문제를 해결해주자.
수열 B에 포함되어있는 수들을 아래 구현의 B 배열과같이 표현하면 코드를 더욱 간단하게 작성할 수 있다.
문제의 제한에 따라 어떤 순간에도 점수는 1000을 넘을 수 없으므로, 아래의 구현에서 배열의 범위를 넘는 접근 등은 일어나지 않음을 확인하자.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
int cur, N, M;
int A[100], B[1001];
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> N;
for (int i = 0; i < N; i++) cin >> A[i];
cin >> M;
for (int i = 0; i < M; i++) {
int x; cin >> x;
B[x] = 1;
}
for (int i = 0; i < N; i++) {
cur += A[i];
if (B[cur]) cur = 0;
}
cout << cur;
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 27329 // C++] 繰り返し文字列 (Repeating String) (0) | 2023.01.30 |
---|---|
[BOJ 27328 // C++] 三方比較 (Three-Way Comparison) (0) | 2023.01.30 |
[BOJ 27334 // C++] マラソン大会 (Marathon Race) (0) | 2023.01.30 |
[BOJ 27331 // C++] 2 桁の整数 (Two-digit Integer) (0) | 2023.01.30 |
[BOJ 11523 // C++] Running Steps (0) | 2023.01.30 |