알고리즘/programmers

[Programmers] [1차] 다트 게임

꾸준함. 2021. 11. 28. 23:13

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/17682

 

코딩테스트 연습 - [1차] 다트 게임

 

programmers.co.kr

간단한 구현 문제였습니다.

 

#include <string>
#include <vector>
#include <cmath>
using namespace std;
int solution(string dartResult) {
string temp = "";
vector<int> v;
for (char c : dartResult)
{
if (c >= '0' && c <= '9')
{
temp += c;
}
else if (c == 'S' || c == 'D' || c == 'T')
{
int num = stoi(temp);
num = pow(num, c == 'S' ? 1 : c == 'D' ? 2 : 3);
v.push_back(num);
temp = "";
}
else if (c == '*')
{
int rIdx = v.size() - 1;
v[rIdx] *= 2;
if (rIdx > 0)
{
v[rIdx - 1] *= 2;
}
}
else if (c == '#')
{
int rIdx = v.size() - 1;
v[rIdx] *= -1;
}
}
int answer = 0;
for (int num : v)
{
answer += num;
}
return answer;
}
view raw .cpp hosted with ❤ by GitHub

 

개발환경:Visual Studio 2017

 

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

반응형

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

[Programmers] 가운데 글자 가져오기  (0) 2021.12.07
[Programmers] [1차] 비밀지도  (0) 2021.12.04
[Programmers] 2016년  (0) 2021.11.23
[Programmers] 실패율  (0) 2021.11.20
[Programmers] 크레인 인형뽑기 게임  (0) 2021.11.20