Algorithm/Solution
[백준] 11140번 - LOL(C++)
BeNI
2021. 9. 28. 19:17
728x90
https://www.acmicpc.net/problem/11140
문제 설명 :
LOL이 나올 수있는 여러 가짓수를 생각해서 조건문을 만드는 문제였다.
L과 L사이에 알파벳 하나가 왔을 때 결과값이 1이 나와야 되는 경우 때문에 정규표현식을 이용하려고했는데
다까먹어서 엄청 헤맸다...저게 맞는지도 모르겠음 정답이라고 떴으니까 맞는거겠지
코드 :
#include <iostream>
#include <regex>
#include <string>
using namespace std;
int main() {
int t;
cin >> t;
for (int i = 0; i < t; i++) {
string s;
cin >> s;
regex number("[a-z]*l[a-z]l[a-z]*");
if (s.find("lol") != string::npos) {
cout << "0\n";
}
else if (s.find("lo") != string::npos || s.find("ol") != string::npos || s.find("ll") != string::npos || regex_match(s,number)){
cout << "1\n";
}
else if (s.find("l") != string::npos || s.find("o") != string::npos) {
cout << "2\n";
}
else {
cout << "3\n";
}
}
}
굉장히 더러운 코드! 난이도는 실버 3인가 그렇다.
728x90