乱搞
double1994
这个作者很懒,什么都没留下…
展开
-
ustc 1233 Gift
一开始想先选出送出的物品,再乘以临界点的种类。但是求组合数超时。先枚举临界点,再乘以所有可能(2的幂)即可。 #include #include #include #include #include #include using namespace std; typedef long long LL; #define INF 100007 #define N 10005 int a[原创 2014-03-16 21:38:09 · 449 阅读 · 0 评论 -
codeforces 253B Physics Practical
不停从头开始枚举最靠后面满足条件的数据 一开始O(n^2)复杂度超时,里层改二分n*logN过去 PS:二分后在53组数据错了,只有两个数据时min为默认极大值,错误...另外加了一个判断 #include #include #include #include int cmp(const void *p1,const void *p2) { return *(int *)p1-*原创 2013-08-14 22:26:24 · 577 阅读 · 0 评论 -
HUOJ 1394 Minimum Inversion Number
本题两种解法,暴搜,线段树,线段树只是处理最初序列,找出最初的逆序数,之后每次移动为当前逆序数+比移动数大的数-比移动数小的数。 做本题时完全没有想法,完全没有~copy胡浩大神代码,第一次抄错题...然后抄完发现无法理解,耗了很久,最后再discuss里找到一位暴搜和线段树都过了。先看暴搜了解了思路。又慢慢看懂了线段树。 说说线段树找最初序列逆序数的思路: 先先建一个2^x>n的二叉树,每原创 2013-08-11 11:44:24 · 677 阅读 · 0 评论 -
codeforces 23A. You're Given a String...
巨水的一道题,100的数据O(n^3)复杂度30ms过。 蛋疼的是一开始读错题,substring字串认为是subsequence子序列。字串必须连续... 没啥好说的 #include #include #include #include #define max(a,b) ((a)>(b)?(a):(b)) #define INF 1000000005 char a[105]; int m原创 2013-08-14 22:16:30 · 604 阅读 · 0 评论 -
HDU 4737 A Bit Fun
水过。不知道是dp还是什么,懒得想了。直接n^2过。 #include #include #include #include #include #include using namespace std; typedef long long LL; #define lson l, m, rt << 1 #define rson m + 1, r, rt << 1 | 1 #define原创 2014-03-25 15:08:25 · 403 阅读 · 0 评论 -
HDU 4731 Minimum palindrome
学会了打表找规律。m >= 3时abc循环最小,m=2时打表找规律即可。 ps:m>=3时,n%3,即多出来的数加在后面,加前面会令回文从3增加到4或5 #include using namespace std; int n, m; int main(){ int t; int num = 1; scanf("%d", &t); while(t--){原创 2014-03-26 10:04:54 · 453 阅读 · 0 评论 -
CF 448D Multiplication Table
首先二分答案。每行加上min(x, (x-1原创 2014-08-01 10:53:52 · 615 阅读 · 0 评论