鱼C论坛

 找回密码
 立即注册
楼主: jerryxjr1220

[作品展示] python解一道有趣的智力题(开箱子)

[复制链接]
发表于 2017-7-7 13:10:59 | 显示全部楼层
看答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-7 13:29:37 | 显示全部楼层
a = [0 for each in range(100)]
for i in range(1,101):
    ii = i
    while i <= 100:
        a[i-1] = 1 - a[i-1]
        i += ii
print(a)
for each in a.copy():
    if each == 1:
        print('Box {} is open.'.format(a.index(each)+1))
        a[a.index(each)] = 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-3 23:44:23 | 显示全部楼层
本帖最后由 shigure_takimi 于 2017-12-3 23:58 编辑
#  关着为False,打开为True。
boxes = [False for i in range(100)]
for i in range(1,101):
    for index in range(i-1,len(boxes),i):
        boxes[index] = not boxes[index]
print("Totally",sum(boxes),"boxes are opened!")
for i in range(len(boxes)):
    if boxes[i]:
        print("box -", (i+1),"is opened!")

#  Totally 10 boxes are opened!
#  box - 1 is opened!
#  box - 4 is opened!
#  box - 9 is opened!
#  box - 16 is opened!
#  box - 25 is opened!
#  box - 36 is opened!
#  box - 49 is opened!
#  box - 64 is opened!
#  box - 81 is opened!
#  box - 100 is opened!
#  和自己半年前写的相比简洁多了。
#  放了一段时间,前两天重新拾起来,却好像反而比以前进步了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-26 20:45:11 | 显示全部楼层
谢谢~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-26 20:55:48 | 显示全部楼层
想看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-26 22:04:10 | 显示全部楼层
'''
走廊上有100个关上的储物柜。有个人先是将100个柜子全都打开。接着,每数两个柜子关上一个。
然后,在第三轮时,再每隔两个就切换第三个柜子的开关状态(也就是将关上的柜子打开,将打开的关上)。
照此规律反复操作100次,在第i轮,这个人会每数i个就切换第i个柜子的状态。
当第100轮经过走廊时,只切换第100个柜子的开关状态,此时有几个柜子是开着的?分别是哪几个箱子?
'''
box=[0]*100
for i in range(1,101):
    for j in range(100):
        if (j+1)%i==0:
            if box[j]==1:
                box[j]=0
            else:
                box[j]=1
for i in range(100):
    if box[i]==1:
        print('第%d个箱子是开着的。'% (i+1))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-27 13:56:17 | 显示全部楼层
看一看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-31 11:12:35 | 显示全部楼层
66666666666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-12 23:50:39 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-4-22 22:10:08 | 显示全部楼层
回复
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-4-22 23:56:08 | 显示全部楼层
package practice;

import java.util.ArrayList;

class Box {
        boolean open;

        protected Box(boolean open) {
                this.open = open;
        }

        public boolean getStat() {
                return this.open;
        }

        public void shift() {
                this.open = !this.open;
        }
}

public class Main {

        public static void main(String[] args) {
                ArrayList<Box> al = new ArrayList<>(100);
               
                for (int i = 0; i < 100; i++) {
                        al.add(new Box(true));
                }

                for(int round=1;round<=100;round++) {
                        int j = 0;
                        while(j<100) {
                                al.get(j).shift();
                                j += round;
                        }
                }
               
                for(int i=0;i<al.size();i++) {
                        if(al.get(i).getStat()) {
                                System.out.print((i+1)+" ");
                        }
                }
               
        }

}
=================================
这是我用Java写的,结果不对。
大家帮忙看看错在哪里了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-9 17:27:26 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-4-15 20:42:34 | 显示全部楼层
0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-12 19:26:31 From FishC Mobile | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-1 20:23:22 | 显示全部楼层
good
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-10 08:35:22 | 显示全部楼层
牛逼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-10 10:07:05 | 显示全部楼层
厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-10 19:05:08 From FishC Mobile | 显示全部楼层
不会,看看学习下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-10 19:40:31 | 显示全部楼层
题都读不清楚,哎
来凑热闹。。。。。。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-8 21:18:23 | 显示全部楼层
hh

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 02:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表