鱼C论坛

 找回密码
 立即注册
查看: 2762|回复: 2

[已解决]求求看看这个该怎么写呢

[复制链接]
发表于 2022-10-17 15:12:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目描述

奶牛Brown总是在寻找合适的就餐处。今天,它走到了一条小路,路牌上写着小路的名字。这条路有两侧,左侧是一片空地,右侧也是一片空地。Brown用眼睛估算了两侧空地的长草情况,现在它想把这条路的情况记在笔记本上。 具体来说,它想记录下这条路的名字、适合就餐的位置(只有当一个位置的两侧都长草时,Brown才会认为这是一个合适的就餐处)和可以就餐的位置(当一个位置的两侧至少有一侧长草时,Brown认为这是一个可以就餐的位置)。 但Brown是一头奶牛,不方便写字,所以它请你来帮忙。

输入

输入一共有两行; 第一行是一个长度不超过10的字符串,表示小路的名字; 第二行包括两个以空格分隔的十进制数,表示小路左、右两侧的长草情况(此数若用二进制表示,为1的位置表示长草,为0的位置表示不长草)。

输出

输出三行。第一行是一个字符串,即小路的名字; 第二行是一个十进制数,表示适合就餐的位置(此数如果用二进制表示,为1的位置表示适合就餐,为0的位置不适合); 第三行是一个十进制数,表示可以就餐的位置(此数如果用二进制表示,为1的位置表示可以就餐,为0的位置不可以)。

输入样例1

Lane
3 5
输出样例1

Lane
1
7
样例解释

第二行输入的第一个数3表示小路左侧长草情况,其对应的二进制数为011,从左往右数,第2位和第3位为1,表示这两个位置长草;输入的第二个数5表示小路右侧长草情况,其对应的二进制数为101,从左往右数,第1位和第3位均为1,表示这两个位置长草。 则根据题意,两个输入进行按位与运算,有:011&101=001,可见某个位置左侧和右侧都为1的只有第三个位置,故只有最右边的位置适合就餐。而只要一个位置的两侧至少有一侧长草,则认为可以就餐,即只要两个输入的十进制数所对应的二进制数某一位为1,该位置就可以就餐。两个输入进行按位或运算,有:011 | 101=111,故三个位置都可以就餐。所以适合就餐的位置情况是001,十进制表示为1;可以就餐的位置情况是111,十进制表示为7。
最佳答案
2022-10-17 15:20:44
name = input()
temp = input().split()
a, b = int(temp[0]), int(temp[1])
print(name)
print(a & b)
print(a | b)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-10-17 15:16:52 | 显示全部楼层
a,b=map(int,input().split())
print(a&b,a|b)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-10-17 15:20:44 | 显示全部楼层    本楼为最佳答案   
name = input()
temp = input().split()
a, b = int(temp[0]), int(temp[1])
print(name)
print(a & b)
print(a | b)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-26 01:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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