[BOJ]1292号:気軽に解答


✔10.質問する



😎 ソースコード

#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変数が利用される.カウントがその数字の値を超える前に繰り返す!この点だけを解決して、すぐに問題を解決しました.