样例输入
无
样例输出
无
提示
设鸡翁、鸡母、鸡雏的个数分别为x,y,z,题意给定共100钱要买百鸡,若全买公鸡最多买20只,显然x的值在0~20之间;同理,y的取值范围在0~33之间,可得到下面的不定方程:5x+3y+z/3=100及x+y+z=100。所以此问题可归结为求这个不定方程的整数解。可通过对未知数可变范围的穷举,验证方程在什么情况下成立,从而得到相应的解。
#include
int a,b;
for(a=0;a<20;a++) for(b=1;b<33;b++)
if((5*a+3*b+(100-a-b)/3)==100&&((100-a-b)%3==0)) printf(\ return 0; }
问题 T: 趣味程序设计_谜语博士
时间限制: 1 Sec 内存限制: 128 MB
提交: 131 解决: 97 [提交][状态][讨论版]
题目描述
诚实族和说谎族是来自两个岛屿的不同民族,诚实族的人永远说真话,而说谎族的人永远说假话,一天,谜语博士遇到三个人,知道他们可能是来自诚实族或说谎族的。为了调查这三个人是什么族的,博士分别问了他们问题,下面是他们的对话: 博士问:“你们是什么族的?”
第一个人答:“我们之中有两个来自诚实族。”
第二个人说:“不要胡说,我们之中只有一个诚实族的。”
第三个人接着说:“对,就是只有一个诚实族的。” 请根据他们的回答判断他们分别是哪个族的.
输入
无
输出
设说谎其值为0,诚实其值为1,输出这三个人的的值在一行上,中间用空格隔开
样例输入
无
样例输出
无
提示
假设这三个人分别为A、B、C,若说谎其值为0,若诚实其值为1,根据题目中三个人的话可分别列出:
第一个人:a&&a+b+c==2 || !a&&a+b+c!=2
第二个人:b&&a+b+c==1 || !b&&a+b+c!=1
第三个人:c&&a+b+c==1 || !c&&a+b+c!=1
#include
int a,b,c; {
for(a=0;a<=1;a++)
for(b=0;b<=1;b++) for(c=0;c<=1;c++)
if(a&&a+b+c==2 || !a&&a+b+c!=2) if(b&&a+b+c==1 || !b&&a+b+c!=1)
if(c&&a+b+c==1 || !c&&a+b+c!=1) {
printf(\ return 0; } }
return 0; }
问题 U: 趣味程序设计_猜牌术(-)
时间限制: 1 Sec 内存限制: 128 MB
提交: 85 解决: 23 [提交][状态][讨论版]
题目描述
魔术师利用一幅牌中13张黑桃,预先将它们排好后迭在一起,牌面朝下,对观众说:我不看牌,只数数就可以猜到每张牌是什么,我大声数数,你们听,不信?你们就看,魔术师将最上面的那张牌数为1,把它翻过来正好是黑桃A,将黑桃A话在桌子上,然后按顺序从上到下数手中的余牌,第二次数1、2,将第一张牌放在这迭牌的下面,将第二张牌翻过来,正好是黑桃2,也将它放在桌子上,第三次数1、2、3,将前面两张依次放在这迭牌的下面,再翻第三张牌正好是黑桃3,这样依次进行,将13张牌全部翻出来,准确无误。问魔术师手中的牌原始次序是怎样安排的? 如果不是确定的13张牌,而是n张牌呢?
输入
每行输入一个n值(n不超过100),表示牌的总张数.
输出
对应的原始排列次序.
样例输入
15 14 13
样例输出
1 11 2 8 7 3 13 9 6 4 15 14 12 10 5 1 5 2 14 12 3 11 7 8 4 6 13 10 9 1 8 2 5 10 3 12 11 9 4 7 6 13
问题 V: 趣味程序设计_舍罕王的失算
时间限制: 1 Sec 内存限制: 128 MB
提交: 316 解决: 73 [提交][状态][讨论版]
题目描述
相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着8X8共64格的象棋棋盘说:陛下,请您赏给我一些麦子吧。就在棋盘的第1格中放1粒,第2格放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上64格,我就感激不尽了。舍罕王让人扛来一袋麦子,他要兑现他的许诺。请问,国王能兑现他的许诺吗?共要多少麦子赏赐他的宰相? 格子数不是64呢?
输入
输入n表示格子数(n不超过64).
输出
输出麦子总数.
样例输入
3 64
样例输出
7

