链接: 4503. 数对数量
签到题,枚举x,y=n-x,检查y是否在范围内即可。
import collections
import io
import os
import sys
from collections import deque
if sys.hexversion == 50923504:
sys.stdin = open('input.txt')
else:
input = sys.stdin.readline
MOD = 10 ** 9 + 7
def solve(a,b,n):
ans = 0
for x in range(0,a+1):
y = n-x
if 0<=y<=b:
ans += 1
print(ans)
if __name__ == '__main__':
if False:
n = int(input())
m, n = map(int, input().split())
s = list(map(int, input().split()))
a = int(input())
b = int(input())
n = int(input())
solve(a,b,n)
链接: 4504. 字符串消除
import collections
import io
import os
import sys
from collections import deque
if sys.hexversion == 50923504:
sys.stdin = open('input.txt')
else:
input = sys.stdin.readline
MOD = 10 ** 9 + 7
def solve(s):
stack = []
cnt = 0
for c in s:
if stack and stack[-1] == c:
cnt += 1
stack.pop()
else:
stack.append(c)
if cnt & 1:
print('Yes')
else:
print('No')
if __name__ == '__main__':
if False:
n = int(input())
m, n = map(int, input().split())
s = list(map(int, input().split()))
s = input()
solve(s)
链接: 4505. 最大子集
忘记删除调试用的break,wa了一次,蛋疼。
import io
import os
import sys
from collections import deque
if sys.hexversion == 50923504:
sys.stdin = open('input.txt')
else:
input = sys.stdin.readline
MOD = 10 ** 9 + 7
def sovle(n, x):
if n == 1:
print(1)
print(x[0])
return
x.sort()
s = set(x)
mx = max(x)
mn = min(x)
ans = list()
def jugde(b):
if b == 0:
return False
return b & (b - 1) == 0
for i in x:
j = i
t = [j]
k = 0
while j + 2 ** k <= mx:
b = j + 2 ** k
if b in s and all(jugde(abs(b-a)) for a in t):
t.append(b)
k += 1
if len(t) > len(ans):
ans = t[:]
print(len(ans))
print(' '.join(map(str, ans)))
if __name__ == '__main__':
if False:
n = int(input())
m, n = map(int, input().split())
s = list(map(int, input().split()))
n = int(input())
x = list(map(int, input().split()))
sovle(n, x)