개발/알고리즘
백준 4659번 비밀번호 발음하기 C++
daisy-day
2021. 1. 12. 23:55
문제
4659번: 비밀번호 발음하기
좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtp
www.acmicpc.net
코드
#include<bits/stdc++.h>
using namespace std;
string s;
bool isVowels(char c)
{
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
return true;
return false;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
while (1)
{
bool v = false;
bool isGood = true;
cin >> s;
if (s == "end")
return 0;
for (int i = 0; i < s.size(); i++)
{
if (i < s.size() - 2 && isVowels(s[i]) && isVowels(s[i + 1]) && isVowels(s[i + 2]))
{
isGood = false;
break;
}
if (i < s.size() - 2 && isVowels(s[i]) == false && isVowels(s[i + 1]) == false && isVowels(s[i + 2]) == false)
{
isGood = false;
break;
}
if (i < s.size() - 2 && s[i] == s[i + 1] && s[i] == s[i + 2])
{
isGood = false;
break;
}
if (i < s.size()-1 && s[i] == s[i + 1] && s[i] != 'e' && s[i] != 'o')
{
isGood = false;
break;
}
if (isVowels(s[i]))
{
v = true;
}
isGood = true;
}
if (isGood && v)
{
cout << "<" << s << "> " << "is acceptable." << "\n";
}
else
{
cout << "<" << s << "> " << "is not acceptable." << "\n";
}
}
return 0;
}
걸린 시간
1시간
이게 1시간이나 걸릴 문제인가?
이렇게밖에 못푸는 문제인가 ?ㅠㅠ