푸드 파이트 대회

2025. 1. 14. 12:48·코딩 테스트/프로그래머스

문제

문제 해석

- 0번 인덱스의 음식은 물

- 1번부터 food를 앞(index 증가), 뒤(index 감소)로 index 값을 넣어주면 된다.

- 문자열로 반환할 것이므로 index는 to_string()을 사용해 문자로 변환

- food는 앞 뒤로 넣으므로 최소 2개가 존재해야 넣을 수 있다. 나눗셈 연산 사용

- food는 앞 뒤로 2개를 넣었으므로 2개를 빼준다.

- 다 넣었으면 문자열 중간에 0번 인덱스(물)를 넣어준다.

 

코드

#include <string>
#include <vector>

using namespace std;

string solution(vector<int> food) {
    string answer = "";
    int insertCount = 0;
    for(int IDX = 1; IDX < food.size(); ++IDX)
    {
        // 해당 인덱스의 food가 2개 이상이면 앞 뒤로 넣을 수 있다.
        while(food[IDX] / 2 > 0)
        {
            answer.insert(insertCount, to_string(IDX));
            answer.insert(answer.length() - insertCount, to_string(IDX));
            ++insertCount;
            food[IDX] -= 2;
        }
    }
    
    answer.insert(answer.length() / 2, to_string(0));
    
    return answer;
}

 

다른 사람의 풀이

- 이중 반복문을 사용, 다른 점은 마지막 부터 Index를 시작시켜 문자열을 안쪽부터 바깥쪽으로 붙여나가며 풀이

answer = to_string(i) + answer + to_string(i);

- O(n), string::insert()의 오버라이드 함수인 string& insert(size_t pos, size_t n, char c)를 이용하여 앞 뒤로 문자열을 붙이는 풀이.

'코딩 테스트 > 프로그래머스' 카테고리의 다른 글

명예의 전당 (1)  (2) 2025.01.16
콜라 문제  (2) 2025.01.16
두 개 뽑아서 더하기  (0) 2025.01.14
가장 가까운 같은 글자  (1) 2025.01.14
숫자 문자열과 영단어  (2) 2025.01.13
'코딩 테스트/프로그래머스' 카테고리의 다른 글
  • 명예의 전당 (1)
  • 콜라 문제
  • 두 개 뽑아서 더하기
  • 가장 가까운 같은 글자
DevJoo1120
DevJoo1120
  • DevJoo1120
    Jin's Programming
    DevJoo1120
  • 전체
    오늘
    어제
    • 분류 전체보기 (142)
      • 포트폴리오 (7)
        • Castlevania: Aria of Sorrow.. (7)
        • [UE5] KILL Everything (0)
      • C++ (0)
      • 라이브러리 (1)
      • 다이렉트X11 (0)
      • Unreal Engine (11)
        • Unreal Document (1)
        • 이것 저것 (8)
        • UI (1)
      • 자료구조 및 알고리즘 (0)
      • 책 정리 (3)
        • 코딩 테스트 합격자 되기 C++ 편 (10)
      • 코딩 테스트 (32)
        • 프로그래머스 (32)
      • 스파르타 코딩 언리얼 1기 (9)
        • 특강 (0)
        • C++와 Unreal Engine으로 3D .. (2)
      • TIL(Today I Learned) (63)
      • 영어 공부 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스파르타 코딩 클럽
    배열
    C++
    이중 반복문
    반복문
    Unreal Engine 5
    코딩 테스트
    Study
    책 정리
    프로그래머스
    팀 프로젝트
    코딩테스트
    WINAPI
    map
    Til
    코딩 테스트 합격자 되기 c++ 편
    과제
    정리
    문자열
    정렬
  • hELLO· Designed By정상우.v4.10.5
DevJoo1120
푸드 파이트 대회
상단으로

티스토리툴바