※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 26753번 문제인 OIJ이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/26753
26753번: OIJ
Szkoła Bajtka i Bitosi organizuje wielki festyn z okazji rozpoczęcia Olimpiady Informatycznej Juniorów. W ramach przygotowań, rodzeństwo podjęło się sporządzenia jak największej liczby transparentów z napisem oij (w Bajtocji używa się wyłącz
www.acmicpc.net
문자열을 앞에서부터 읽으면서 새로운 "oij"를 만들기 위해 필요한 다음 문자를 순서대로 탐색해나가는 것으로 문제를 해결하자.
아래의 l배열과 turn과 같은 변수를 이용하면 구현을 편하게 해낼 수 있다.
아래는 제출한 소스코드이다.
#include <iostream>
#include <string>
using namespace std;
char l[3] = { 'o','i','j' };
string s;
int turn;
int ans;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> s;
for (auto& cur : s) {
if (cur == l[turn]) turn++;
if (turn == 3) turn = 0, ans++;
}
if (ans) cout << ans;
else cout << "NIE";
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 26767 // C++] Hurra! (0) | 2022.12.25 |
---|---|
[BOJ 26752 // C++] Zegarek (0) | 2022.12.25 |
[BOJ 26754 // C++] Programy (0) | 2022.12.25 |
[BOJ 26768 // C++] H4x0r (0) | 2022.12.25 |
[BOJ 26738 // C++] Lizak (0) | 2022.12.24 |