Memo
로직 설명
•
단순 구현문제 입니다.
unordered_set을 이용해서 속도 향상을 기대했지만, 단순하게 비교하는 코드가 훨씬 빠른것을 측정했기 때문에 수정했습니다. (약 2배 차이)
unordered_set을 사용한 코드
Code
제출 날짜
@4/28/2021
메모리
2020 KB
시간
0 ms
#include <iostream>
#include <string>
std::string word;
int ans;
void io_faster()
{
std::ios_base::sync_with_stdio(false);
std::cin.tie(0);
std::cout.tie(0);
}
void input()
{
io_faster();
std::cin >> word;
}
void solve()
{
size_t i = -1;
while(++i < word.size())
{
if (i < word.size() - 1)
{
if ((word[i] == 'c' && (word[i+1] == '=' || word[i+1] == '-')))
i+=1;
else if ((word[i] == 'd' && (word[i+1] == '-')))
i+=1;
else if ((word[i+1] == 'j') && (word[i] == 'l' || word[i] == 'n'))
i+=1;
else if (i < word.size() - 2 && word[i] == 'd' && word[i+1] == 'z' && word[i+2] == '=')
i+=2;
else if ((word[i+1] == '=') && (word[i] == 's' || word[i] == 'z'))
i+=1;
}
ans++;
}
}
void print_val()
{
std::cout << ans << "\n";
}
int main()
{
input();
solve();
print_val();
return (0);
}
C++
복사