weixin_51542019 2022-03-20 12:03 采纳率: 75%
浏览 21
已结题

Python 一个碗中装有n个糖果,第 i 个糖果棒有 k[i] 个成分。

一个碗中装有n个糖果,第 i 个糖果棒有 k[i] 个成分。
迈克尔对 m 种成分 c[0], c[1], ..., c[m-1] 过敏。如果一块糖果中含有这些 m 成分中的任何一种,迈克尔就不能吃它。
给定对糖果棒和迈克尔过敏成分的描述,输出他将服用的糖果棒的数量。

我的思路:

输入由 n+2 行组成。
输入的第一行包含一个整数 n。
接下来的 n 行包含糖果棒的成分。每一行都将单个糖果棒描述为组成糖果棒的以空格分隔的成分列表。
最后,最后一行包含迈克尔过敏的成分的空格分隔列表(即来自长度为 m 的列表 c 的信息)。
要求输出 print一个整数,迈克尔吃的糖果条数。
Hint:
1 <= n, m, k[i] <= 100
每个成分都是一个非空的小写英文字母串,长度最多为 7。
没有糖果棒的相同成分列出两次。
没有成分在迈克尔过敏的成分列表中出现两次。
Time Limit:
程序必须在任何有效输入的 4 秒内完成运行。

TEST
Sample Input 1

3
sugar cocoa salt
salt celery poison bleach
almonds
celery carrots
Sample Output 1
2
示例 1 说明
有三个糖果棒。它们分别有 3、4 和 1 种成分。
迈克尔对芹菜和胡萝卜过敏。这意味着他不会接受
第二个糖果棒,因为它含有芹菜。
其他 2 块糖果对他来说很好,所以他会拿走。
Sample Input 2
5
a b c
b d f
g d e f
c
a b c
b c
Sample Output 2
1

我的代码
n=int(input())
candies=[]
for i in range(0,n):
l1=list(map(str,input().split(" ")))
请问怎么继续

  • 写回答

2条回答 默认 最新

  • 关注
    
    n=int(input())
    l=[]
    x=0
    for i in range(0,n):
        l1=list(map(str,input().split(" ")))
    
        l.append(l1)
    allergic=list(map(str,input().split(" ")))
    for i in l:
        flag=0
        for j in i:
            for k in allergic:
                if j==k:
                    flag=1
                    break
        if flag==0:
            x+=1
    print(x)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月28日
  • 已采纳回答 3月20日
  • 创建了问题 3月20日

悬赏问题

  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序
  • ¥50 html2canvas超出滚动条不显示
  • ¥15 java业务性能问题求解(sql,业务设计相关)
  • ¥15 52810 尾椎c三个a 写蓝牙地址