문제 링크 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 풀이 이 문제를 풀 때 stoi 함수를 몰랐기 때문에 직접 점수를 10의 자리에 해당되면 곱하면서 증가시켜주었기 때문에 코드가 많이 길지만 결국은 비교하면서 스택 자료구조를 사용하면 문제를 쉽게 풀 수 있다. 더보기 #include #include #include using namespace std; int solution(string dartResult) { int answer = 0; vector numberArray; vector number; // Numbering numberArray.push_back(dartResult.substr(0, 1)); for(int i=1; i= '0' && dartResult[i] ..
문제 링크 코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스�� programmers.co.kr 풀이 stage 번호와 실패율의 pair 변수를 vector 컨테이너로 선언하였다. 그리고 오름차순으로 정렬 후 단계 수와 맞는 인원수를 second에 증가시킨 후 전체 totalPerson로 나눈 것을 second에 다시 넣어주었다. totalPerson은 계속 감소시켜주었다. 마지막에 실패율을 compare 비교함수를 정의하여 정렬하면 first값이 실패율에 따른 stage 번호이다. 더보기 #include #include #include #i..
문제 링크 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 풀이 해당 문제는 비트연산으로 해결하였다. 겹칠 때는 논리합을 사용하고 msb와 비교하며 '#'을 집어넣고 0이면 " "을 집어넣었다. temp 변수를 계산 끝나고 지워주는 역할도 temp &= ~msb로 하였다. 더보기 #include #include #include using namespace std; vector solution(int n, vector arr1, vector arr2) { vector answer(n); int temp;..
문제 링크 코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 �� programmers.co.kr 풀이 d 배열을 오름차순(default)으로 Sort 후 작은 예산을 신청한 부서부터 최대한 넣는 방식으로 해결하였다. 더보기 #include #include #include #include #include using namespace std; int solution(vector d, int budget) { int answer = 0; sort(d.begin(), d.end()); for(int i=0; i= 0) { answer++; budget..