[프로그래머스] 삼총사



Programmers - [연습문제] 삼총사




사용 언어 - C++

소요 시간 - 10분

정답 여부 - O




문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/131705



문제 요약

  1. 학생들의 번호를 나타내는 정수 배열이 주어집니다.
  2. 이 학생들 중 3명의 학생을 뽑아 정수 번호의 합이 0이 되는 “삼총사”를 결성하려고 합니다.
  3. 삼총사를 만들 수 있는 방법의 수를 반환합니다.




최종 코드

#include <string>
#include <vector>

using namespace std;

int solution(vector<int> number) {
    int answer = 0;
    
    for(int i = 0; i < number.size() - 2; i++)
    {
        for(int j = i + 1; j < number.size() - 1; j++)
        {
            for(int k = j + 1; k < number.size(); k++)
            {
                if(number[i] + number[j] + number[k] == 0)
                    answer++;
            }
        }
    }   
    
    return answer;
}




트러블 슈팅

  • 마지막 for문에서 k를 ++ 해주어야 하는데 j++을 사용하는 바람에 실행시간이 초과되어 오류가 났다




문제 풀이 후 소감

  • 코드를 다시 한 번 잘 읽는 습관을 들이자. 항상 오류는 사소한 것에서 시작된다




오늘의 기록

  • 번아웃. 힘들다.