2022. 9. 6. 18:05 자기개발/코딩테스트
C++ (코딩테스트) - [1차] 다트 게임(프로그래머스)
https://school.programmers.co.kr/learn/courses/30/lessons/17682
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
#include <string>
using namespace std;
int solution(string dartResult) {
int cnt = 0;
int dart[3] = { 0, };
for (int i = 0; i < dartResult.size(); i++)
{
if (dartResult[i] >= '0' && dartResult[i] <= '9')
{
if (dartResult[i] == '1' && dartResult[i + 1] == '0')
{
dart[cnt++] += 10;
i++;
}
else
dart[cnt++] += dartResult[i] - '0';
}
if (dartResult[i] == 'S');
if (dartResult[i] == 'D') dart[cnt - 1] = dart[cnt - 1] * dart[cnt - 1];
if (dartResult[i] == 'T') dart[cnt - 1] = dart[cnt - 1] * dart[cnt - 1] * dart[cnt - 1];
if (dartResult[i] == '*')
{
dart[cnt - 1] *= 2;
if (cnt != 1) dart[cnt - 2] *= 2;
}
if (dartResult[i] == '#')dart[cnt - 1] *= -1;
}
return dart[0] + dart[1] + dart[2];
}'자기개발 > 코딩테스트' 카테고리의 다른 글
| C++ (코딩테스트) - 이진 변환 반복하기(프로그래머스) (0) | 2022.09.29 |
|---|---|
| C++ (코딩테스트) - 신고 결과 받기(프로그래머스) (1) | 2022.09.19 |
| C++ (코딩테스트) - 소수 찾기(프로그래머스) (0) | 2022.09.05 |
| C++(코딩테스트) - 예상 대진표(프로그래머스) (0) | 2022.08.17 |
| C++(코딩테스트) - 쿼드압축 후 개수 세기(프로그래머스) (0) | 2022.08.17 |