随笔分类 - 模拟
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟题 【代码】 cpp include using namespace std; map mmap; int main(){ ifdef LOCAL_DEFINE freopen("rush_in.txt", "rt", st
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 给你一个n m的地图。 每个地图为0的时候可以安全走过,且走过后变成1. (一定要离开之后才会变成1) 而为1的则走过之后会掉入下一层。 你一开始在初始位置(x1,y1); 且你想到达位置(x2,y2); 且要求到达(x2,y2)并且掉进下一层。 保证(
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 已知k门成绩. 总共有n门成绩. 让你构造剩下的n k门成绩,使得这n门成绩的中位数 =y,并且这n门成绩的和要小于等于x. n为奇数 【题解】 首先判断k门成绩的和是不是小于等于x. 然后x sum就是剩下的n k个数字最多能填的和。 可以这样。 既然
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟水题 【代码】 cpp include using namespace std; const int N = 1000; //no pain no gain int a[N+10],b[N+10],n; int get_an
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟 【代码】
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 n个人站在一排。 每次第一个人和第二个人打架。 输的人跑到队列的尾巴去。 然后赢的人继续在队首.和第三个人打。 谁会先赢K次。 【题解】 会发现,一轮之后就一直是那个最大的赢了。 则第一轮先模拟,有人达到k次就直接输出它。 否则输出那个最大的就好。 【代
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 注意是所有的名字里面,只出现了其中某一个名字一次。 【代码】 cpp include using namespace std; const string temp[] = {"Danil","Olya","Slava","Ann
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 预处理出某个方向的左边、前边、右边是哪个方向就好了。 然后就是普通的bfs了。 hash存到某个点,走到这里的方向的最小距离。 dfs输出路径。 【代码】 cpp include using namespace std; //[
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 每个图案里面的“洞”的个数都是不同的。 则可以根据这个判别每个图像是什么。 先用dfs确定轮廓之后。 再从每个白点出发dfs,遇到的黑点且没有到达过边界,那么它就是所遇到的黑点里面的“洞”; 计算每个轮廓有多少个"洞"就好 【代
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 发现根本不用存节点信息。 遇到了叶子节点且为黑色,就直接覆盖矩阵就好(因为是并集); 【代码】 cpp include using namespace std; const int N = (1 s; pos = 0; dfs(
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 递归模拟就好。 【代码】
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 后序遍历的最后一个是根节点。 然后在中序遍历中找到这个节点。 分为左右两段. 然后递归上述操作就好。 题目描述好坑啊。 原来是叶子节点的权值的最小值。。 (叶子节点到根节点的权值和最小的对应的叶子节点的最小权值,,,) 【代码】
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 二叉树的话,直接用数组存就好了。 写个bfs记录一下答案。 【代码】 cpp include using namespace std; const int N = 300; string s; int g[N+10][3],cn
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 双向链表模拟题。 移动的时候,要注意它就在所需要的位置的情况。那种情况不移动。 (如果已经在所需位置了,还用链表的插入方式强行移动的话,会WA到死..) 【代码】 cpp include using namespace std;
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟题。注意场宽为3 【代码】 cpp include using namespace std; const int N = 10; int n, m, num[N + 10][N + 10], last[N + 10]; st
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 会链表的插入操作的话。这个就不难了。 放置两个哨兵节点。 然后模拟插入一个节点的过程就好。 实时修改光标就好 即下一个插入的位置。 【代码】 cpp include using namespace std; const int
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 用栈来处理一下表达式就好。 因为括号是一定匹配的。所以简单很多。 a b x b c会做a b c次乘法。 【代码】 cpp include define ll long long using namespace std; co
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 栈模拟一下就好。 每个输出段后面都有一个空行。 包括最后一个. 【代码】 cpp include using namespace std; const int N = 1000; int n,a[N+10],bo[N+10];/
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟题。。 输入稍微恶心了点。 getchar()一个一个搞就好。 【代码】 cpp include using namespace std; const int N = 5; string s[N + 5],s2; char
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举 【代码】 cpp include using namespace std; const int N = 100; char s[N]; int len; bool check(int L) { if (len%L != 0
阅读全文

浙公网安备 33010602011771号