
搜索
zhk1211
这个作者很懒,什么都没留下…
展开
-
题解 P6201 【[USACO07OPEN]Fliptile S】
讲讲我的做法刚开始做这道题的时候,看到 n<=15n<=15n<=15,我这个 666 年级的蒟蒻的第1反应是状压 dpdpdp。貌似不好做。然而,等到我在省中集训的时候,老师的一席话,让我豁然开朗。今天我准备来分享一下。老师的话是:除了第1行,其他格子要不要翻是由上一行决定的。听到这里,我想应该跟那时的我一样——豁然开朗了。用 dfsdfsdfs 或用二进制来枚举第1行要不要翻(推荐用 dfsdfsdfs,不容易 WAWAWA,并且时间充裕的很),然后去模拟后面的格子,最后再看最原创 2020-07-20 17:10:51 · 243 阅读 · 1 评论 -
题解 P2296 【寻找道路】
在有向图 GGG 中,每条边的长度均为 111,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件:路径上的所有点的出边所指向的点都直接或间接与终点连通。在满足条件 111 的情况下使路径最短。注意:图 GG 中可能存在重边和自环,题目保证终点没有出边。请你输出符合条件的路径的长度。这道题,我们考虑哪些点能够到达终点,问题等价于:反向建边后,终点能到达哪些点。void dfs(int x){ h[x]=true; for(auto i:E[x]) if(!h.原创 2020-05-17 13:01:20 · 433 阅读 · 2 评论 -
流星雨的题解
贝茜听说了一个骇人听闻的消息:一场流星雨即将袭击整个农场,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽,届时将会对它撞到的一切东西造成毁灭性的打击。很自然地,贝茜开始担心自己的安全问题。以 FJ 牧场中最聪明的奶牛的名誉起誓,她一定要在被流星砸到前,到达一个安全的地方(也就是说,一块不会被任何流星砸到的土地)。如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上...原创 2020-04-12 11:55:38 · 1108 阅读 · 1 评论 -
变色龙的题解
在一个的,每个格子都有一种给定颜色的方格矩阵上,有一只变色龙在处,他会在这个方格矩阵上移动。移动规则如下:变色龙只能朝相邻于当前方格的一个方格(上下左右)上移动一格,且不能移出边界。众所周知,变色龙特异的身体会使自己的身体颜色随着环境颜色的变化而变化。所以如果移动到的方格和当前方格的颜色不同,变色龙颜色变化次数会+1,否则颜色变化次数不变。然而变色龙并不希望能移动的步数最小,它希望颜...原创 2020-04-12 11:14:52 · 1040 阅读 · 0 评论 -
Prime Path的题解
给定两个四位素数 n,m。每次能改变 n 中的一个数字,每次改变后的 N 也必须是素数。(首位不能改成 0)求最少经过多少次改变能使 n 变成 m,如果无法变成则输出-1。直接搜索#include <bits/stdc++.h>using namespace std;template<typename T>inline void read(T &F...原创 2020-04-08 12:10:47 · 289 阅读 · 0 评论 -
数的拆分的题解
给定正整数 n, k,请将 n 写成 k 个正整数的乘积,要求这 k 个数的和尽可能小。输出这个最小的和。搜索这是最基本的搜索。有 404040 分。#include <bits/stdc++.h>using namespace std;typedef long long ll;template<typename T>inline void read(T ...原创 2020-04-08 11:49:18 · 552 阅读 · 1 评论 -
第2题:母牛生小牛
第2题:母牛生小牛这一题呢,我用了许多种尝试,刚开始用了递归暴力模拟,我想大家都能看懂。#include <bits/stdc++.h>using namespace std;unsigned long long n;unsigned long long ss(unsigned long long x){ unsigned long long y=x+3; u...原创 2020-04-05 13:21:09 · 1252 阅读 · 1 评论 -
第七题 knight
第七题 knight其实就是嘉泽上的牛骑士,可不是骑士牛。这道题最好用深搜,这题淋漓尽致地展现了深搜的优点,第一次搜到的答案一定是最优解,所以推荐用深搜。有同学听了还是不理解,就最好跟着代码来进行理解吧。代码上!#include <bits/stdc++.h>using namespace std;char a[155][155];int m,n;void dfs(i...原创 2020-04-05 13:09:24 · 1628 阅读 · 1 评论 -
第五题 sirius
第五题 sirius你可以稳妥地用贪心大法拿到20分。贪分大法!!!#include <bits/stdc++.h>using namespace std;int main(){ cout<<"No"; return 0;}此题为wolf的升级版,走0步=向一个方向走一步,再走回来。所以走0步,可以不考虑,只要考虑走一步和走两步。没有太多的技术含量代...原创 2020-04-05 13:06:18 · 170 阅读 · 0 评论 -
第四题 wolf
第四题 wolf是我想用来拉开差距的一题。不会这道题的同学可以直接打No,稳稳拿到20分。很多同学用了贪心#include <bits/stdc++.h>using namespace std;int main(){ cout<<"No"; return 0;}多好,目标不高,拿的稳!当然赵海鲲的正解标程,可不是这样做的,用了宽搜,听说毕大佬用了深...原创 2020-04-05 13:04:59 · 181 阅读 · 0 评论 -
题解 P5663 【加工零件【民间数据】】
博客园体验更佳讲讲我的做法确定做法首先,看到这道题,我直接想到的是递归,于是复杂度就上天了,考虑最短路。如何用最短路首先,看一张图我们该如何解决问题?问题:333做555阶段的零件111要不要做呢?其实,实质就是看333到111有没有长度为555的路径。问题:333做777阶段的零件111要不要做呢?其实,实质就是看333到111有没有长度为777的路径。问题:3...原创 2020-04-05 11:54:05 · 556 阅读 · 0 评论 -
题解 P1457 【城堡 The Castle】
来讨论区大摇大摆地逛了一圈后,我发现竟然大家的代码都很长然而代码真的要写那么长吗首先,来分析问题,1,2,4,8,这些数显然是有特点的,也许你已经想到了没错,它们都是2的次方数。1是2的0次方2是2的1次方4是2的2次方8是2的3次方知道这个就好办了,用什么呢?没错是位运算,哈哈!1的二进制是12的二进制是104的二进制是1008的二进制是1000于是,就得出了以下代码...原创 2020-04-05 11:34:32 · 384 阅读 · 0 评论 -
题解 P1278 【单词游戏】
前言首先,看到这道题目,我首先想到的是暴搜,通过vectorvectorvector来搞,代码也是很短的。这里用了一个类似于分治的思想把一个大问题转化为小问题先枚举第一个单词,之后把能拼接在它后面的单词都一个一个的去试,哪个最优选哪个#include <bits/stdc++.h>using namespace std;template<typename T>...原创 2020-04-05 10:46:44 · 597 阅读 · 0 评论 -
核心法阵
核心法阵其实就是一道很简单的题目,我们先枚举全排列。bool work(int l,int r){ int maxn=INT_MIN,minn=INT_MAX; for(int i=l;i<=r;i++)maxn=max(maxn,f[i]),minn=min(minn,f[i]); return maxn-minn==r-l;}学过 STLSTLSTL ...原创 2020-04-04 21:08:00 · 342 阅读 · 2 评论 -
2020-2-15模拟赛题解
前言这场比赛我发挥欠佳,各种小失误不断,也需要我自己去反思吧,以后打模拟赛也要有选择性地去打,毕竟一天 333 场比赛肯定会有影响。正文1. 子数整数错点考试的时候蒟蒻把 No 打成了 No。分析这道题实际上就是个小模拟,您只要会 forforfor 循环就可以轻松过掉此题。答案是直接统计一下就好了。我们可以直接从 10000 到 30000 循环,算出 s1 、 s2 、 s3...原创 2020-04-04 18:02:47 · 311 阅读 · 4 评论 -
题解 P1985 【[USACO07OPEN]翻转棋】
讲讲我的做法刚开始做这道题的时候,看到n<=15n<=15n<=15,我这个666年级的蒟蒻的第1反应是状压dpdpdp。貌似不好做。然而,等到我在省中集训的时候,老师的一席话,让我豁然开朗。今天我准备来分享一下。老师的话是:除了第1行,其他格子要不要翻是由上一行决定的。听到这里,我想应该跟那时的我一样——豁然开朗了。用dfsdfsdfs或用2进制来枚举第1行要不要翻(推...原创 2020-04-05 10:28:40 · 393 阅读 · 1 评论