zoukankan      html  css  js  c++  java
  • cf 11A

    A. Increasing Sequence
    time limit per test
    1 second
    memory limit per test
    64 megabytes
    input
    standard input
    output
    standard output

    A sequence a0, a1, ..., at - 1 is called increasing if ai - 1 < ai for each i: 0 < i < t.

    You are given a sequence b0, b1, ..., bn - 1 and a positive integer d. In each move you may choose one element of the given sequence and add d to it. What is the least number of moves required to make the given sequence increasing?

    Input

    The first line of the input contains two integer numbers n and d (2 ≤ n ≤ 2000, 1 ≤ d ≤ 106). The second line contains space separated sequence b0, b1, ..., bn - 1 (1 ≤ bi ≤ 106).

    Output

    Output the minimal number of moves needed to make the sequence increasing.

    Sample test(s)
    input
    4 2
    1 3 3 2
    output
    3
    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    int n,d,a[2010],ans;
    int main()
    {
          scanf("%d%d",&n,&d);
          for(int i=0;i<n;i++)
                scanf("%d",&a[i]);
          for(int i=0;i<n-1;i++)
          {
                if(a[i+1]<=a[i])
                {
                      ans+=(a[i]-a[i+1])/d+1;
                      a[i+1]+=((a[i]-a[i+1])/d+1)*d;
                }
          }
          printf("%d
    ",ans);
          return 0;
    }
    

      

  • 相关阅读:
    1、如何使用Azure Rest API创建虚拟机
    Ansible---2的Roles使用
    linux下的shell脚本
    生成器 yield和协程
    xshell
    markdown的使用
    加密
    Hbuilder打包app
    尾递归
    jupyter
  • 原文地址:https://www.cnblogs.com/a972290869/p/4218968.html
Copyright © 2011-2022 走看看