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

纸牌游戏

2012-02-12 
纸牌游戏高手进[size11px]任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直

纸牌游戏 高手进
[size=11px]任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,

输出:这时正面向上的牌有哪些?

[解决办法]
1,4,9,16,25,36,49 编号是这几个数字的牌正面向上。
因为当编号i为某个数的平方时,i有奇数个因子(包括1和自身),否则有偶数个因子。而翻牌是从2开始,有奇数个因子的牌被翻偶数次,有偶数个因子的牌被翻奇数次。

热点排行
Bad Request.