山魔

题目

有 n 座山,每座山有南北两面。
每一天,一些山的某一面 (不一定相同) 会受到山魔的袭击。
但是山魔一天最多只会袭击 k 座山。
当每座山的每一面都被袭击过后,山魔就会离开。
那么至少要经过多少天,山魔会消失?
Input
一行两个正整数 n, k。
Output
一个整数,表示答案。
Examples
devil.in devil.out
3 2 3
Notes
对于所有数据,满足 1 ≤ n, k ≤ 10。
Task1[10%]
k = 1
Task2[50%]
k ≤ 4
Task3[100%]
无特殊限制


 

思路

说点神奇的一眼看出规律。

当k>=n时,最多只能袭击所有山的半面,第二次袭击完。

其他时,n*2/k向上取整。


代码

#include<bits/stdc++.h>
using namespace std;
double n,k;
int main()
{
    cin>>n>>k;
    if(k>=n)
    cout<<2;
    else
    cout<<ceil(2*n/k);
 }

凑数题

 

posted on 2019-07-13 21:51  哈弥勒2  阅读(129)  评论(0编辑  收藏  举报

导航