반응형
https://programmers.co.kr/learn/courses/30/lessons/17682
글쓴이의 답
개인적인 풀이 임으로
이것보다 더 좋은 알고리즘은 많음...
이렇게도 풀이하는구나.. 공유하기 위해 올림...
#include <string>
#include <vector>
#include <cmath>
#include <iostream>
using namespace std;
int solution(string dartResult) {
int answer = 0;
vector<int> result;
string numcheck = "";
for(size_t i=0; i<dartResult.size(); i++){
if(('#' == dartResult[i]) || ('*' == dartResult[i])){
if('*' == dartResult[i]){
result[result.size()-1] *=2;
if(0 <= result.size()-2){
result[result.size()-2] *=2;
}
}
else{
result[result.size()-1] *= -1;
}
}
else if(('S' == dartResult[i]) || ('D' == dartResult[i]) || ('T' == dartResult[i])){
int num = stoi(numcheck);
numcheck = "";
if('D' == dartResult[i]){
num = pow(num, 2);
}
else if('T' == dartResult[i]){
num = pow(num, 3);
}
result.push_back(num);
}
else{
numcheck += dartResult[i];
}
}
for(int i=0; i < result.size(); i++){
//cout << result[i] << endl;
answer += result[i];
}
return answer;
}
꾸준히 하다보면 실력이 늘겠지..
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스][C++] 나누어 떨어지는 숫자 배열 (0) | 2022.03.16 |
---|---|
[프로그래머스][C++] 같은 숫자는 싫어 (0) | 2022.03.16 |
[프로그래머스][C++] 가운데 글자 가져오기 (0) | 2022.03.16 |
[프로그래머스][C++] [1차] 비밀지도 (0) | 2022.03.16 |
[프로그래머스][C++] 부족한 금액 계산하기 (0) | 2022.03.16 |