有100张牌,正面是1-100,背面朝上放置,从第二张牌翻面,间隔一张,继续翻面。再从第三张翻面,间隔两张,继续翻面;
求:最后背面朝上的牌的数字。
@num =1..100;
@fz = (0) x 100;
$i = 0;
while($i <= 99){
$b = $i+1;
$c = $b+1;
for($a=$b;$a<=99;$a=$a+$c){
if($fz[$a] == 0){
$fz[$a] = 1;
}else{
$fz[$a] = 0;
}
}
$i++;
}
$i = 0;
while($i <= 99){
if($fz[$i] == 0){
print"$num[$i] ";
}else{
}
$i++;
}
结果发现是1到10 的平方数
翻偶次数的就是背面,翻转次数等于约数个数。