2022-03-01から1ヶ月間の記事一覧
1次元における動的計画法
数列の単元です。
論理数学の単元です
Q5-1. Union-Find
Q4-1. 1 + 2 + … + N (再帰) Q4-2. A + (A+1) + … + B (再帰) Q4-3. フィボナッチ数列 (再帰-1) Q4-4. フィボナッチ数列 (再帰-2) Q4-5. 部分和問題 (再帰-1) Q4-6. 部分和問題 (再帰-2)
二次元配列など Q2. SNS クエリ Q3. 二次元地図 Q4. 二次元地図クエリ Q5. ライツアウト (1) Q6. ライツアウト (2)
for文とシグマ計算 (1) for 文とシグマ計算 (2) for 文とシグマ計算 (3) for 文とシグマ計算 (4) for 文と Π 計算
Q1. N 個の値を受け取る Q2. 末尾挿入クエリ Q3. スタック Q4. 挿入、削除、検索 Q5. ままこだて Q6. 反転 Q7. 先頭への挿入 Q8. 両端への挿入
Q1. 8 番目の値は? Q2. k 番目の値は? Q3. 配列クエリ
Q2-1. 方程式を解く Q2-2. 貯金 (1) Q2-3. 最小の添字 Q2-4. 小さい数の個数 Q2-5. 和が K 以上のペア Q2-6. 重さは何番目? Q2-7. 貯金 (2)
Q1-1. 1 円玉と 5 円玉 Q1-2. お菓子 (1) Q1-3. コイン問題 Q1-4. 荷物と箱 Q1-5. お菓子 (2)
I - 行列操作 O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N = int(input()) Q = int(input()) row_num = list(range(0, N)) col_num = list(range(0, N)) …
K - 巨大企業 O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce sys.setrecursionlimit(1000000) # main def main(): N = int(input()) R = -1 edges = [] for i in range(N): edges…
G - ストリング・クエリ O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce from string import ascii_lowercase # main def main(): Q = int(input()) que = deque() for q in range…
H - Grid 1 O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): H, W = list(map(int, input().split())) G = [] for _ in range(H): S = str(input()) G.append(S…
C - Typical Stairs O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): MOD = 10**9+7 N, M = list(map(int, input().split())) ok = [False] * (N+1) dp = [0] *…
F - 最小全域木問題 O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N, M = list(map(int, input().split())) G = [] for _ in range(N): G.append([]) for _ …
E - 全点対最短経路問題 O(N3) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): INF = 10**18 N, M = list(map(int, input().split())) dist = [] for i in range(N)…
C - Cat Snuke and a Voyage O(N) heapqを使用し、ダイクストラに対応。 from asyncio import QueueFull import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N, M = lis…
C - Cat Snuke and a Voyage O(N) from asyncio import QueueFull import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N, M = list(map(int, input().split())) G = [] …
A - 二分探索の練習問題 O(logN) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N, K = list(map(int, input().split())) A = list(map(int, input().split())) l …
C - Different Strokes O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N = int(input()) BA = [] for i in range(N): a, b = list(map(int, input().split())…
B - 区間スケジューリング問題 O(N) import sys import math import heapq import itertools from collections import deque from functools import reduce # main def main(): N = int(input()) BA = [] for i in range(N): a, b = list(map(int, input().s…