알고리즘/BOJ

백준 1864번 문어 숫자

꾸준함. 2021. 4. 6. 01:13

문제 링크입니다: www.acmicpc.net/problem/1864

 

1864번: 문어 숫자

해류가 매우 느리고 바닥을 기어다니는 생물이 적은 바다 밑바닥에서만 발견되는 잔물결 무늬의 정체는 오랫동안 해양학자들에게 수수께끼였다. 하지만 최근의 연구 성과는 동물 언어학 분야

www.acmicpc.net

간단한 문자열 처리 문제였습니다.

 

#include <iostream>
#include <string>
using namespace std;
long long pow(int n)
{
long long result = 1;
for (int i = 0; i < n; i++)
{
result *= 8;
}
return result;
}
int main(void)
{
ios_base::sync_with_stdio(0);
cin.tie(0);
while (true)
{
string octopusNumber;
cin >> octopusNumber;
if (octopusNumber == "#")
{
break;
}
long long result = 0;
for (int i = 0; i < octopusNumber.length(); i++)
{
switch (octopusNumber[i])
{
case '-':
break;
case '\\':
result += pow(octopusNumber.length() - (i + 1));
break;
case '(':
result += 2 * pow(octopusNumber.length() - (i + 1));
break;
case '@':
result += 3 * pow(octopusNumber.length() - (i + 1));
break;
case '?':
result += 4 * pow(octopusNumber.length() - (i + 1));
break;
case '>':
result += 5 * pow(octopusNumber.length() - (i + 1));
break;
case '&':
result += 6 * pow(octopusNumber.length() - (i + 1));
break;
case '%':
result += 7 * pow(octopusNumber.length() - (i + 1));
break;
case '/':
result -= pow(octopusNumber.length() - (i + 1));
break;
}
}
cout << result << "\n";
}
return 0;
}
view raw .cpp hosted with ❤ by GitHub

 

개발환경:Visual Studio 2017

 

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형

'알고리즘 > BOJ' 카테고리의 다른 글

백준 1952번 달팽이2  (2) 2021.04.07
백준 1942번 디지털시계  (2) 2021.04.06
백준 1837번 암호제작  (0) 2021.04.04
백준 1703번 생장점  (0) 2021.04.04
백준 1598번 꼬리를 무는 숫자 나열  (0) 2021.04.04