首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小弟我们学校的程序设计选拔赛

2012-07-20 
我们学校的程序设计选拔赛1.规则是3个空瓶子可以换一瓶酒。假如有10个瓶子,先换3瓶啤酒,这时有4个空瓶子,再

我们学校的程序设计选拔赛
1.规则是3个空瓶子可以换一瓶酒。假如有10个瓶子,先换3瓶啤酒,这时有4个空瓶子,再换一瓶啤酒,这时有2个空瓶子,这时候再借1瓶,喝完再换1瓶还给老板。现在求n个瓶子最多能换多少瓶酒?


2.求回文数,输入一个数P,求离P最近的N(N>P),N要是回文数。
  类似5,11,131,1221 都是回文数。


3.输入两个二进制数(长度要一样,不能超过100位),判断对应位置上有几位不相同。例如000和111有3位不同,11100,00011有5位不同。。。


小弟大一菜鸟一个,求各位大神指教。





[解决办法]
第一题 另类思路
既然允许借酒
如果你有两瓶酒,你先借一瓶,这是你就有3瓶酒了,然后 用三个空瓶子换取一瓶酒还掉刚才借的酒,
这时候 你手里就没有 东西了,总而言之就是说 只要你有2瓶酒 就能够换取一瓶;
//
#include<iostream>
int main()
{
int num=0;
std::cin>>num;//你有 num瓶酒

num = num/2;//num 是int型

std::cout<<"你可以换取的瓶数"<<num<<std::endl;



return 0;
}

热点排行