洛谷 P6546 [COCI2010-2011#2] PUŽ

洛谷 P6546 [COCI2010-2011#2] PUŽ_第1张图片

洛谷 P6546 [COCI2010-2011#2] PUŽ_第2张图片 洛谷 P6546 [COCI2010-2011#2] PUŽ_第3张图片

讲解:

        首先还是正常输入:

 int a,b,v;
cin>>a>>b>>v;

然后经入一个函数num:

cout<

之所以要乘以1.0是因为要向上取整!而这个num函数的两个参数则是“蜗牛白天爬了多少米”也就是“v-a”,另一个是“蜗牛一天能爬多少米”也就是“a-b”。

        接下来是函数:

        (x是函数的一个入参,y也是)如果x是y的倍数的话,那么直接返回x/y即可。因为学过除法的都知道x/y的商代表着x中有多少个y(也就是几天)!

if(x%y==0){ 
        return x/y; //x代表蜗牛白天爬了多少米 y代表蜗牛一天爬了多少米
}

那如果 x不是y的倍数咋办?只需那么就返回x/y天再加上1天就可以了!因为x/y求的是要多少天,那么只需“+1”就可以求出要多少天了!

else{ 
        return x/y+1;//如果余数不为0的话 说明y是不x的倍数,那么就返回x/y天再加上1天。
}

 

参考代码&&代码解读 

洛谷 P6546 [COCI2010-2011#2] PUŽ_第4张图片

你可能感兴趣的:(算法,c++,c语言,模拟,数学)