摘要: I、马拉松 设sum【i】为X或Y 周围的且不在XY路径上的点 所以这题的答案 就是从sum【x】中选一个起点,sum【y】中选一个终点,答案就是 sum【x】*sum【y】 可以用dfs实现 void dfs(int u ,int pa) //dfs是有方向的 { sum[u] = 1; for( 阅读全文
posted @ 2024-08-10 15:43 sonyaxu 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 题目看起来很像01背包,也就是dp【i】【j】表示前i个物品,花费为j,最多价值为dp【i】【j】 注意到题中给的数据范围,如果用常规01背包状态转移,有下面的问题: v很大,花费很大,也就是说没法开这么大的二维数组,但是我们注意到 这意味着我们可以让所有的价格都减去最小的价格,这样价格的范围就变为 阅读全文
posted @ 2024-08-09 14:40 sonyaxu 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 圆周率日挑战 py挑战 import decimal import math pi = decimal.Decimal('3.1415926535897932384626433832795028841971693993751' '05820974944592307816406286208998628 阅读全文
posted @ 2024-08-04 00:58 sonyaxu 阅读(7) 评论(0) 推荐(0) 编辑
摘要: C、小w和大W的决斗 博弈论 sg函数打表即可 #include <bits/stdc++.h> using namespace std; typedef long long ll; #define int ll #define endl '\n' #define fi first #define 阅读全文
posted @ 2024-07-26 22:03 sonyaxu 阅读(14) 评论(0) 推荐(0) 编辑
摘要: B 爱探险的朵拉 这道题描述的是一个基环树的图,可视作每个关卡与其连接的关卡之间连接了一条边。 思路就是遍历每个点作为起点,计算环和最长链的长度。注意标记一下。 不要重复搜搜过的环。 #include <bits/stdc++.h> using namespace std; typedef long 阅读全文
posted @ 2024-07-18 08:48 sonyaxu 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 求出最长好子序列 I 题面:https://leetcode.cn/problems/find-the-maximum-length-of-a-good-subsequence-i/description/ dp含义: dp[i][j] 前i个数,不超过j个不满足 递推: 遍历之前的数,如果nums 阅读全文
posted @ 2024-06-10 10:58 sonyaxu 阅读(34) 评论(0) 推荐(0) 编辑