1. f579.1. 購物車
    1. 題目
    2. 解題

f579.1. 購物車

f579.1. 購物車

APCS歷屆

題目

大家先來看一下題目吧:
題目
可以稍微看一下,意思就是如果每個人當中都有買a, b兩項東西都有買我們就+=1。

解題

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 用list抓會好嗎 分次計算 if in & not in -> how about -
# 我記得可以delete list中的東西 我們檢測到<0就從list刪掉 -> .remove()
from sys import stdin
def fun(person): #here ass, bss += 每次用完看有幾一次for取min
global ans
ai = 0
bi = 0
for item in person:
if item == a:
ai += 1
if item == b:
bi += 1
if item == -a:
ai -= 1
if item == -b:
bi -= 1
if min(ai, bi) > 0:
ans += 1

#a, b = 3, 9
#n = 2
#list1 = [[1, 8, 0], [5, 6, 0], [2, 7, 0], [8, 1, 0], [33, 22, 0]]
#list1 = [[3, 12, 9, -3, 3, 9, 0], [17, 3, 25, 3, -3, -3, 9, 0]]
a, b = map(int, stdin.readline().split())
n = int(stdin.readline())
list1 = []
for i in range(n):
list1.append(list(map(int, stdin.readline().split())))
ans = 0
for i in list1:
fun(i)
print(ans)

我個人想法是用for走進list裡面,看一下是否兩個都有再ans+=1。