[BOJ] 1292번: 쉽게 푸는 문제

HyeRyun·2020년 11월 9일
0

Baekjoon Online Judge

목록 보기
8/30

✔️ 문제

😎 소스 코드

#include <iostream>
#include <vector>

using namespace std;

int solution(int a, int b) {
  int answer = 0, num = 1;
  vector<int> v;
  
  for (int i = 0; i < b;) {
    int count = 1;
    
    while (num >= count) {
      v.push_back(num);
      
      // 계산 위치(a, b)에 도달하면 sum 시작
      if (i + 1 >= a && i + 1 <= b) {
        answer += num;
      }
      i++;
      count++;
    } // while
    
    num++;
  } // for
  
  cout << answer << endl;
  
  return answer;
}

int main(){
  int A, B;
  cin >> A >> B;
  
  solution(A, B);
  
  return 0;
}

✊ 문제를 풀고 나서

문제 자체는 어려운게 아닌데, 수학적인 부분을 어떻게 풀어나가야 하나 고민을 했다. 1, 2, 2, 3, 3, 3, 4, 4, 4, 4,... 이렇게 해당 숫자가 그 숫자의 값만큼 반복되는 패턴을 어떻게 코딩해야할지 좀 애먹었다. 그래서 count 변수를 이용했다. 카운트가 그 숫자의 값을 넘기기 전까지 반복하는걸로! 이 부분만 해결하니 금방 풀린 문제였다.

profile
개발개발

0개의 댓글

관련 채용 정보