自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

鲤の游

SSL是母校,现前往新地图开拓中...... 漫游于平行线间的灰鲤,此处激起黑色孤独水花。

  • 博客(17)
  • 收藏
  • 关注

原创 GDKOI2021普及游记

前言因为疫情,所以GDKOI是在学校里整。所以并没有游,只有记。Day 0下午AJ下午的时候开了个小会说相关事项。并疯狂地提醒我们书要摆好,不要说话等问题。题目压缩包下发,尝试下了个解码软件跑,但是跑不出来。(果然不是那么容易的事,没有什么真的解出来的想法)晚上颓。名人朋友圈用小莫皮成功捞到了一只专巫恋(可爱!),结果人家主皮就是小莫(草了)。然后加了个群投骰子玩真心话大冒险,学到了不少玩法。说话加后缀:“当然我是指xing的方面”“虽然但是我要面子”。(后缀就是每说一次话后面就要加

2021-01-28 21:43:22 377 3

原创 【字符串】Ybt_移位包含

题目判断一个子串是否是另一子串通过循环移位后的新子串的子串。解需要一些c++字符串自带的函数。代码代码1(直接将长的字符串弄成环,判断另一个字符串是否出现)#include<cstdio>#include<cstring>#include<iostream>using namespace std;string s1, s2, s3;int main(){ cin >> s1 >> s2; if(s1.size() &l

2021-01-24 21:55:13 109

原创 【字符串】Ybt_数字反转

数字反转-反转数字-反转术式(雾)题目给一个数字,要你符号不变,但数字反着输出。其中,最高位不能为0,除非它这个数就是零。解甚至不用字符串…注意处理最高位为0的情况即可。代码#include<cstdio>#include<cstring>#include<iostream>using namespace std;int n;int main(){ scanf("%d", &n); if(n < 0) printf("-"

2021-01-24 21:30:03 112 4

原创 【BFS】Ybt_电路维修

电路维修给你个n*m的格子方阵,格子上标有 \ 或者 / ,代表这个格子左上角与右下角联通 或者 右上角与左下角联通。 你可以选择旋转格子,使得它变成另外一种情况的联通。要你联通方阵最左上角和最右下角。有多组数据。解可以将方格的角视作一个点,它通往隔壁的点如果不需要转格子,那么建边权值为0,需要转格子,那么权值为1.于是就成了求最短路的问题。但是普通地跑 SPFA 会挂掉。于是改成双端队列求解(还跑得快一点)。代码#include <cstdio>#include &lt

2021-01-22 08:59:52 218 1

原创 【BFS】Ybt_荆轲刺秦王

荆轲刺秦王解BFS。注意处理情况的时候细心点。代码#include <cstdio>#include <iostream>#include <cmath>#include <queue>using namespace std;int n, m, c1, c2, d, a, qx, qy, zx, zy, ans, ans1, ans2;int b[500][500], B[500][500][20][20];int fx[15]

2021-01-21 13:08:51 135

原创 【BFS】Ybt_立体推箱子

这题写的真的心累。首先是RE,内存超限。遂重构了一次代码。结果WA了。然后叫人看了好久发现是输入的问题,枯了。题目解大模拟——BFS——各种情况十分琐碎。我们将箱子横着归为类型1,竖着类型2,立着类型3。打个四个方向处理的表。代码#include <cstdio>#include <cstring>#include <iostream>#include <queue>using namespace std;int

2021-01-21 10:15:07 110

原创 【BFS】山峰与山谷

题目给出一个 n∗nn*nn∗n 的矩阵,每个点都有一个高度。一个山峰或山谷是一个高度相等的连通块。这个连通块周围的方格,都比山峰矮或都比山谷高。*如果整个地图是个连通块,那么它既是山峰又是山谷。解。BFS,每走过一个点判断它旁边的点是否决定它是否山峰或山谷。代码#include<cstdio>int b[1001][1001], h[1001][1001], n, sf, sg, anssf, anssg;int fx[10] = {0,-1,0,1,-1,+1,-1,

2021-01-20 16:51:32 238

原创 【BFS】Ybt_走迷宫

一个 N∗NN*NN∗N 的地图,求从 (qx,qy)(qx,qy)(qx,qy) 走到 (zx,zy)(zx,zy)(zx,zy) 需要几步。解标准的BFS。每个坐标可以用 数组 或是 改成序号用序列,还可以尝试 make_pair 存到序列里。代码#include<cstdio>#include<queue>#include<cstring>#include<iostream>using namespace std;queue &l

2021-01-20 15:50:37 120

原创 【DFS】Ybt_虫食算

题目大意可恶的虫子把一些数字吃掉了!你只能知道数位数和进制数为n的三个数 A,B,C。其中 C=A+B,数字都由大写字母表示,相同字母表示这个位置上是相同的数字。要你求每个字母所代表的数字。输入5ABCEDBDACEEBBAA输出1 0 3 4 2解深度搜索。枚举这些字母代表的数字。从后往前枚举列,设这列的被加数,加数,与和为 a,b,c,得:如果上一列的a’,b’确定,那么进位也是确定的,如果a+b+t不等于这一列的c,方案不合法如果上一列不确定,如果 a+b不等于c

2021-01-09 16:51:08 82 1

原创 【DFS】Ybt_数独游戏

题目大意给你一些数独题,让你填。空位以 ‘.’ 表示,多组数据,以end结尾。解深度搜索,剪枝。用二进制位压缩储存状态,用这个以判断当前位置可以填的数字。代码#include<cstdio>#include<iostream>#include<cstring>using namespace std;int l[20], h[20], z[5][5], k[20][20], flag;char c;char getc(){ //输入 c

2021-01-09 10:05:04 266 1

原创 【DFS】Ybt_拔河比赛

一场拔河,给出所有人都体重,让你将他们分成两队:拔河比赛两边人数最多不能相差 1。每个队员都有体重,我们要使两边比赛的人体重和相差最小。多组数据。其中 1 <= T <= 50 , n <= 20 , 30 <= W_i <= 120以上。解由于数据十分小。所以直接暴力DFS即可。代码#include<cstdio>#include<iostream>#include<cmath>using namespace

2021-01-08 21:41:40 282

原创 【二分】Ybt_最大均值

题目大意给定正整数序列 A,求一个平均数最大的,长度不小于 L 的(连续的)子段解为了方便计算所以所有数都乘上1000.Then, 二分均值。nnn 的范围到 10510^5105考虑二分判断结果如何在 O(n)O(n)O(n) 或 O(nlogn)O(nlogn)O(nlogn) 的复杂度内解决:我们可以将所有数减去 mid ,然后累计前缀和。当一段数 aia_iai​ ~ aj(j<=i−l)a_j (j <= i-l)aj​(j<=i−l) 的和 Sum[i]−Su

2021-01-08 21:08:54 167

原创 【贪心】Ybt_防具布置

题目解设 KiK_iKi​ 为从 0 i0~i0 i 的防具的多少。由于题目中说到,整个防线上只可能有一个破绽。所以输入的防线如果有破绽,则 K0K_0K0​ ~ KiK_iKi​ 全是偶数, KiK_iKi​ 后全是奇数。二分破绽点即可。如果没有破绽,则 KKK 全是偶数。代码#include<cstdio>#include<iostream>using namespace std;long long T, n, l, r, ll,

2021-01-03 16:15:10 198 1

原创 【二分】Ybt_数列分段

题目给出 n 个数,让你分成 m 段,使得每段和最小。解二分答案。二分每段的和,然后判断能不能用m段分完。代码#include<cstdio>int n, m, sum, l, r, mid, cnt, addd, a[100010];int main(){ scanf("%d%d",&n,&m); for(int i = 1; i <= n; ++i){ scanf("%d",&a[i]); sum += a[i]; } l =

2021-01-03 10:35:07 168

原创 【贪心】Ybt_国王游戏

题目每个大臣在左、右手上有个整数,国王自己左、右手也有个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少,注意,国王的位置始终在队伍的最前面。输入第一行一个数,n第二行两个数,是国王左右手的数字接下来 n 行,是各大臣左右手的数字输出一个数,表示获得

2021-01-03 10:16:03 134

原创 【贪心】Ybt_畜栏预定

题目大意同一时间内,一个畜栏只能供一头牛使用。给出一些牛需要使用畜栏的时间段,让你求使用的最少畜栏数量与安排方案。输入第一行一个 n ,代表牛的数量接下来 2 ~ n+1 行,每行两个数,代表这头牛使用畜栏的起始时间与结束时间。输出第一行一个数,代表最少畜栏数量。接下来 2 ~ n+1 行,每行一个数,代表这头牛安排到第几个畜栏。解先按开始时间从小到大排序,时间相同的按结束时间从小到大排序。假设我们已经安排了k头牛在畜栏内,对于要考虑的下一头牛:1.它的开始时间比在畜栏内的牛最早结束

2021-01-02 21:39:49 172

原创 【贪心】Ybt_雷达装置

题目大意给出n个目标的坐标,你有若干个雷达,这些雷达只能放在x轴上,雷达的半径为d。求覆盖所有目标所需最小雷达数,解贪心。首先可以用勾股定理求出对于一个目标,雷达在x轴上的取值范围。我选择从左到右考虑放雷达。遂以右端点从小到大排序。对于未覆盖的一个目标,最优的是往它的右端点上放个雷达,然后看这个雷达能覆盖多少个后面的雷达,再考虑下一个。代码#include<cstdio>#include<iostream>#include<algorithm>

2021-01-02 20:00:01 149

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除