[백준 32342] 와우와 쿼리 (C#, C++) - soo:bak
작성일 :
문제 링크
설명
각 문자열에서 WOW가 연속으로 등장하는 횟수를 구하는 문제입니다.
접근법
문자열을 처음부터 끝까지 순회하며 현재 위치에서 시작하는 길이 3의 부분 문자열을 확인합니다.
이후 해당 부분 문자열이 WOW와 일치하면 개수를 증가시키고, 최종 개수를 출력합니다.
Code
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using System;
class Program {
static void Main() {
var q = int.Parse(Console.ReadLine()!);
for (var i = 0; i < q; i++) {
var s = Console.ReadLine()!;
var cnt = 0;
for (var j = 0; j + 2 < s.Length; j++) {
if (s[j] == 'W' && s[j + 1] == 'O' && s[j + 2] == 'W') cnt++;
}
Console.WriteLine(cnt);
}
}
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int q; cin >> q;
for (int i = 0; i < q; i++) {
string s; cin >> s;
int cnt = 0;
for (int j = 0; j + 2 < (int)s.size(); j++) {
if (s[j] == 'W' && s[j + 1] == 'O' && s[j + 2] == 'W') cnt++;
}
cout << cnt << "\n";
}
return 0;
}