#include <string>
#include <vector>
#include <algorithm>
using namespace std;
string solution(vector<int> food) {
string answer = "";
string tmpF, tmpS;
for (int idx=1; idx<food.size(); idx++) //0번 인덱스인 물은 제외
{
string oneFood="";
if ((food[idx]%2)!=0)
{
food[idx]-=1; //홀수면 하나뺌
}
// oneFood=(to_string((idx))*(to_string(food[idx]/2));
int num= food[idx]/2;
for (int j=0; j<num; j++)
{
oneFood+=to_string(idx);
}
tmpF+=oneFood;
}
tmpS=tmpF;
reverse(tmpS.begin(), tmpS.end());
answer=tmpF+"0"+tmpS;
return answer;
}
배운 점
oneFood는 temp변수여서 for문이 돌아갈때마다 초기화해줘야 하는데
앞에 선언만 해놓고 초기화를 안해서
결과값 앞에 틀린 문자열들이 계속 붙어나왔다
초기화해줘야 할 임시변수는 꼭 체크하기
'CS > 알고리즘' 카테고리의 다른 글
[C++][프로그래머스] 실패율 [실패] (0) | 2023.08.06 |
---|---|
[c++][프로그래머스] 제일 작은 수 [성공] _ vector 특정 원소 지우기 (0) | 2023.08.05 |
[c++] [프로그래머스]크기가 작은 문자열 [성공] (0) | 2023.08.02 |
[c++][프로그래머스] 성격 유형 검사하기_카카오 2022 인턴십 기출 (0) | 2023.08.01 |
백준 1978번: 소수 찾기 (자세한 설명 포함) (0) | 2023.02.27 |