Official

A - 登山道の気温変化 / Temperature Changes on a Mountain Trail Editorial by physics0523


初心者の方へ


\(T\) を順次受け取って、前の項との差の絶対値が \(K\) であるなら答えを \(1\) 加算することを繰り返せばよいです。
差の絶対値を取る際、絶対値を取る関数がその言語の標準にあれば abs(a-b) と求めることもできますし、なくても \(|a-b| = \max(a,b)-\min(a,b)\) などから求めることができます。

これは、例えば for 文と if 文の組み合わせで実現可能です。

実装例 (C++):

#include<bits/stdc++.h>

using namespace std;

int main(){
  int N,K;
  cin >> N >> K;
  vector<int> T(N);
  int res=0;
  for(int i=0;i<N;i++){
    cin >> T[i];
    if(i>0){
      if(abs(T[i]-T[i-1])>=K){res++;}
    }
  }
  cout << res << "\n";
  return 0;
}

posted:
last update: