- 博客(9)
- 收藏
- 关注
原创 PTA L3-004 肿瘤诊断 (30 分)
记录一下自己的第一道三维BFS 题目地址 L3-004 肿瘤诊断 (30 分) 将二维扩展到三维、偏移量由原来的上下左右四个方向,变成上、前后左右、下六个方向,其他依旧 二维偏移量: int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1}; 三维偏移量 int d[6][3] = {{-1, 0, 0}, {0, -1, 0}, {0, 0, 1}, {0, 1, 0}, {0, 0, -1}, {1, 0, 0}}; 代码: #include <
2022-04-22 16:43:41
350
原创 PTA L2-034 口罩发放 (25 分)
题目地址 L2-034 口罩发放 (25 分) 测试点(记录一下我遇到的坑) 1.测试点4和测试点5的提交时间一样,卡排队顺序。 2.有合法记录的、身体状况为 1 的申请人必须全部存下来,输出时再判重,不可以set直接存放判重,否则卡4.5.6测试点。 AC代码 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <map>
2022-04-21 11:54:30
2321
5
原创 Manacher算法
题目地址 AcWing:3188. manacher算法 说明及示意图 1.在枚举点i的时候,因为i在以mid为中心的最长回文串中,所以点i和点j关于mid对称,p[i] = p[j],因为 (i + j) / 2 == mid,所以j = 2 * mid - i, 即p[i] = p[mid * 2 - i]; 2.如果以点j为中心的最长回文串的左边超出以mid为中心的最长回文串的左边,则p[i] = mr - i; 3.综上所述,p[i] = min(p[mid * 2 - i], mr - i).
2022-03-13 11:12:46
371
原创 试题 历届真题 杨辉三角形【第十二届】【省赛】【B组】
题目 蓝桥杯:杨辉三角形 AcWing:杨辉三角形 思路 因为杨辉三角是左右对称的,所以n最早出现的位置只能是左半部分。 每一行中越靠近中间的数越大,每一斜行中越往下越大。 所以从最下面的斜行往上枚举。 示意图: 代码 #include <iostream> using namespace std; typedef long long LL; int n; LL C(int a, int b) // 求组合数 { LL res = 1; for (int i = a,
2022-03-06 18:36:34
533
原创 【蓝桥杯】试题 基础练习 2n皇后问题
题目地址 试题 基础练习 2n皇后问题 题面 样例输入 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 样例输出 2 样例输入 4 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ##样例输出 0 思路 先用n皇后的方法放黑棋,当黑棋放完之后再放白棋。 AC代码: #include <iostream> using namespace std; const int N = 20; int n; int res; // 放结果 int
2022-03-03 12:21:30
204
原创 Sequence Transformation Codeforces Round #686 (Div. 3)
传送门 题目 输入 5 3 1 1 1 5 1 2 3 4 5 5 1 2 3 2 1 7 1 2 3 1 2 3 1 11 2 2 1 2 3 2 1 2 3 1 2 输出 0 1 1 2 3 题意 给你一个数组,在数组中随便找一个数字x,找的这个x在数组中可能有多个,任何一个x都不能删除。每一次操作可以删除不包含x的任何一个区间段,问最少需要操作几次,可以让数组中只剩数字x。 思路 枚举每一个数的间隔,然后取最小值。 AC代码 #include <iostream> #includ
2020-11-25 20:11:52
144
原创 B. RPG Protagonist Educational Codeforces Round 94 (Rated for Div. 2)
原题链接 B. RPG Protagonist 题目 输入 3 33 27 6 10 5 6 100 200 10 10 5 5 1 19 1 3 19 5 输出 11 20 3 Note 题意 思路 代码: #include <iostream> #include <stdio.h> #include <algorithm> #include <cstring> #include <cstdio> #include <vecto
2020-11-23 08:46:14
158
原创 B. Array Cancellation Codeforces Round #668 (Div. 2)
B. Array Cancellation 题目 #include <iostream> #include <stdio.h> #include <algorithm> #include <cstring> #include <cstdio> #include <vector> #include <utility> #include <stack> #include <queue> #include
2020-11-06 19:25:34
166
1
原创 C1. Pokémon Army (easy version) Codeforces Round #672 (Div. 2)
C1. Pokémon Army (easy version) Codeforces Round #672 (Div. 2) 原题链接 一个有意思的dp 题目 题意 从原数组a中找k个数,组成b数组,要保证 1≤b1<b2<⋯<bk≤n, 然后进行b1−b2+b3−b4+… .操作,求操作后的最大值是多少。 思路 减完之后要加,加完之后又要减,所以用dp保留上一步操作的结果,与下次操作后做对比,取最大值。 dp公式: dp[i][0] = max (dp[i - 1][0], dp[i
2020-10-30 09:17:08
234
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人