07 2019 档案

摘要:原题地址 前缀和水题,没什么好讲的,注意横纵坐标加1。 另外此题空间有点紧。 代码实现如下: #include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for (register int i = (a); i <= (b); 阅读全文
posted @ 2019-07-17 11:52 雲裏霧裏沙 阅读(175) 评论(0) 推荐(0)
摘要:原题地址 差分,想到了这个再看看代码应该就很好做了。 代码实现如下: #include <bits/stdc++.h> using namespace std; #define int long long #define rep(i, a, b) for (register int i = (a); 阅读全文
posted @ 2019-07-17 09:41 雲裏霧裏沙 阅读(160) 评论(0) 推荐(0)
摘要:原题地址 这题讲一下第一行的枚举就可以了。 第一行枚举的k的第j位如果是1,是指第一行的这一位应该被切换状态(开或关),与初始状态无关(实际上,遇1切换和遇0切换是一样的)。 那么就直接放代码了。 代码实现如下: #include <bits/stdc++.h> using namespace st 阅读全文
posted @ 2019-07-16 22:08 雲裏霧裏沙 阅读(184) 评论(0) 推荐(0)
摘要:原题地址 虽然很简单但却是map很典型的运用,姑且就放上来吧。 代码实现如下: #include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for (register int i = (a); i <= (b); i++) m 阅读全文
posted @ 2019-07-15 20:32 雲裏霧裏沙 阅读(139) 评论(0) 推荐(0)
摘要:原题地址 单调栈板子题,代码很简单。 注意将a[n + 1]赋值为0,防止栈中矩形未弹完。 代码实现如下: #include <bits/stdc++.h> using namespace std; #define int long long #define rep(i, a, b) for (re 阅读全文
posted @ 2019-07-15 17:02 雲裏霧裏沙 阅读(131) 评论(0) 推荐(0)
摘要:原题地址 虽说是NOI的题目,但其实并不难,所以解析我就写在代码里了。 代码实现如下: //本题应首先将数拆为二进制. #include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for (register int i = ( 阅读全文
posted @ 2019-07-11 19:36 雲裏霧裏沙 阅读(158) 评论(0) 推荐(0)
摘要:原题地址 本来这题我是从最短路标签进去的,但实在想不出最短路该怎么做,所以就用ST表水过去了。 代码实现如下: #include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for (register int i = (a); 阅读全文
posted @ 2019-07-10 20:32 雲裏霧裏沙 阅读(196) 评论(0) 推荐(0)