Codeforces Round #509 (Div. 2)---Problem A

第一次参加codeforces,凌晨起来很新奇,读起来有难度,不过相信自己。

 

题目链接:点击进入

关键词:2n+integer points,increase by 1.

要求的求出最小的高。首先因为是每个依次+1的,因此,首先是均分,余数为0则,这就是最小值,不为0,则加1便是最小值。这样分为两种情况做:

#include <bits/stdc++.h>

using namespace std;

int main()
{
    long long n, k;
    cin >> n >> k;
    if (0 == k % n)
        cout << k / n;
    else
        cout << (k / n + 1);

    return 0;
}

 

也可以将两种归为一种,(k-1)/n,当面积恰均分时,因为k-1实际值比准确值小一,当余数不为1时也是准确值比余数小一,再加上1便是准确值,即

(k+n-1)/n

 

#include <bits/stdc++.h>

using namespace std;

int main()
{
    long long n, k;
    cin >> n >> k;
    cout << (k + n - 1) / n;

    return 0;
}

 

posted @ 2018-09-11 20:03  Hk_Mayfly  阅读(147)  评论(0)    收藏  举报