习题1. 贝贝的保险库密码(key) 问题描述: 某博物馆收藏着多件珍贵的文物。为了保证文物的安全,除非有特别的原因,否则博物馆要全天24小时开启监控设备进行实时监控。当确实需要临时关闭监控设备时,需要使用为特定操作人员设计的监控密码,这种密码要与操作人员的指纹信息结合,生成一个符合规定的数据,该操作人员才能关闭博物馆的监控设备。 馆长设想的监控密码是一个不超过9位的十进制正整数,且要有如下特征:它的各位数字之和等于该数的12进制表示的各位数字之和,还等于该数的16进制表示的各位数字之和。 例如,2991的各位数字之和为 2+9+9+1=21,因为2991=1×1728+8×144+9×12+3,它的12进制表示是189312 ,各位数字之和也是21。但是2991的16进制表示是BAF16,并且11+10+15=36,所以2991不是合法的监控密码。 又如,2992在全部三种表示法中(包括BB016)各位数字之和都是22,所以2992是合法的监控密码。 现在请你帮馆长判断一个数是否可以用作博物馆的监控密码。 输入格式: 输入文件只有一个长度不超过9位的十进制正整数。 输出格式: 第一行为输入的十进制数所对应的十六进制数各位数字之和,第二行为分“Right”(可用作监控密码)或“Wrong”(不可用作监控密码)。 输入输出样例: 3 样例1 Right 112 样例2 Wrong 2992 样例3 Right 22 7 输入 3 输出 习题2.密室寻宝(find) 问题描述: 哈利波特不经意间进入了一座古墓,古墓入口有一道大门,内部有六个密室,每个密室中藏有一件兵器。已知需要两个密码才能从里面打开密室和大门,取出密室内的兵器后从大门撤出。 两个密码均是不大于63的整数,将其转化为八位二进制数后对应位进行“与”运算(运算的规则是:当两个位均为“1”时,结果为“1”,否则结果为“0”)。将“与”运算的结果从右往左数,当第n位为1时,表示可以打开第n个密室,取出其中的兵器;只有当取到至少两件兵器时,方可打开大门撤出。 现在哈利波特任意给你两个密码,请你帮他设计一个程序,算算可以从哪些密室取出兵器,并可否从大门撤出。 输入格式: 第一行输入第一个密码P , 第二行输入第二个密码Q 。 输出格式: 第一行:按从小到大的顺序输出可以打开密室的编号。若没有可以打开的密室,则输出“0”。 第二行:若可打开大门,则输出为“Open”,否则输出“Close”。 输入样例一: 2 5 输出样例一: 0 Close 输入样例二: 7 13 输出样例二: 1 3 Open 本文来源:https://www.wddqw.com/doc/3cd99a2ef211f18583d049649b6648d7c1c70828.html