![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
acwing
After__rain
这个作者很懒,什么都没留下…
展开
-
单调队列优化多重背包
。。。。没什么好说的。。。。b站上有个视频。。不对方程经过处理,就直接丢到单调队列里面去了。。。。我想到现在也没想明白他怎么做到的。。。说正经的。。。本质上是找到方程间的联系性,然后再改写方程。。。然后再进行的单调队列(思维难度在哪里。。。(不过似乎只理解都加上一个数就不难?))然后就没有了#include<bits/stdc++.h>#define MAXN 20005...原创 2020-03-27 21:56:52 · 110 阅读 · 0 评论 -
acwing 180. 排书
就是一个迭代加深套剪枝。。。。比较水?把不用做什么其他优化就可以过去了。。。其他优化比如,限制一次操作必须有对答案有贡献。。缩小原状态规模,你每次单独移动一个,和你后面跟着的一起移动,没有影响的。。然后。。。。。。我暂时想不到了,,还要去上晚修不过有一句说一句,魔兽世界真好玩,硬是玩吐了。。。#include<bits/stdc++.h>using namespace ...原创 2020-03-10 19:15:02 · 95 阅读 · 0 评论 -
luogu P1074 靶形数独
比较基础的搜索剪枝题。。。。。几个优化就可以过了用lowbit代替查找可以填的数用并集来维护什么数不能填优先考虑 最小可能性的位置(讲道理我用堆维护还t了。。。。)然后就可以在$$Ω(m{n2})(n是数独大小,m是可以填的种类数量)解决实际测试中,远远不到这个上界$$#include<bits/stdc++.h>using namespace std;int...原创 2020-03-01 12:32:27 · 102 阅读 · 0 评论 -
acwing 171. 送礼物 卡常好题。。。
嘛,其实就是一个裸的二进制枚举 套 Meeting in Middle 思想。。。比较水。。。吧。好像一个月前就做过。。。#include<bits/stdc++.h>using namespace std;int n;long long w,a[105],b[105],c[105],l1,l2,weight[1<<24],ans,two[25];long...原创 2020-03-01 12:25:35 · 139 阅读 · 0 评论 -
acwing 91. 最短Hamilton路径
状态压缩dp的入门题还是很不错的时间复杂度O(2^n* n^2)#include<bits/stdc++.h>using namespace std;//令F[u][S]为当前在u点且状态为S所得到的最短距离int f[25][1<<21];long long maxl;int n,cost[26][26];int main(){ cin>&g...原创 2019-12-21 23:00:13 · 168 阅读 · 0 评论 -
AcWing 89. a^b
裸体的快速幂#include<bits/stdc++.h>using namespace std;long long a,b,c,p=1;int main(){ cin>>a>>b>>c; if(b==0){ cout<<1%c<<endl; exit(0); } while(b!=0){ if...原创 2019-12-21 22:28:59 · 70 阅读 · 0 评论 -
acwing 90. 64位整数乘法
这题毒的两批核心思想是在乘法运算上把一个因数化作二进制数进行快速幂(防溢出)的运算#include<bits/stdc++.h>using namespace std;unsigned long long a,b,p,sum=0;int main(){ //对a进行二进制分解 然后与b相乘 最后相加 cin>>a>>b>>p;...原创 2019-12-21 22:27:55 · 104 阅读 · 0 评论 -
acwing 4. 多重背包问题 I
#include<bits/stdc++.h>using namespace std;long long n,m,f[1000005],sum=0,g=0,w[1000005],v[1000005],c[1000005];bool judge=false;//¿¼ÂÇÒ»²¨¶þ½øÖƲð·Öint main(){ cin>>n>>m;...原创 2019-12-20 20:30:34 · 567 阅读 · 0 评论 -
acwing 36. 合并两个排序的链表
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* me...原创 2019-12-20 20:28:40 · 76 阅读 · 0 评论 -
acwing 35. 反转链表
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* re...原创 2019-12-20 20:28:06 · 91 阅读 · 0 评论 -
acwing 33. 链表中倒数第k个节点
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* fi...原创 2019-12-20 20:27:30 · 81 阅读 · 0 评论 -
acwing 29. 删除链表中重复的节点
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* de...原创 2019-12-20 20:26:51 · 85 阅读 · 0 评论 -
acwing 28. 在O(1)时间删除链表结点
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: void deleteN...原创 2019-12-20 20:25:24 · 103 阅读 · 0 评论 -
hdu1276
#include<bits/stdc++.h>using namespace std;int t,n,sum=0;bool judge[5005];int main(){ cin>>t; for(int cishu=1;cishu<=t;cishu++){ cin>>n;memset(judge,false,si...原创 2019-12-20 20:23:51 · 447 阅读 · 0 评论 -
acwing 82. 圆圈中最后剩下的数字
class Solution {public: int lastRemaining(int n, int m){ int p[n+5],now=0; p[n]=1;p[0]=1; for(int i=1;i<n;i++)p[i]=i+1; for(int i=1;i<n;i++){ for...原创 2019-12-20 20:22:43 · 97 阅读 · 0 评论 -
acwing132. 小组队列
#include<bits/stdc++.h>using namespace std;int t,zz[1000005],bh,k=0;//zzÿһ¸ö±àºÅËùÊôµÄС×éint js[1005][1005],head[1005],tail[1005];//ÒѾ½ø¶ÓµÄ±àºÅÄڵĶÓÁÐ string now;bool judge[1000005]...原创 2019-12-14 16:41:41 · 499 阅读 · 0 评论 -
acwing128. 编辑器
#include<bits/stdc++.h>using namespace std;int q,sum[1000005],now=(-9876678),tot=0,xc,minl[1000005];char x;stack<int>q1,q2;int main(){ cin>>q;sum[tot]=0; memset(sum,0,sizeof(...原创 2019-12-07 15:51:23 · 175 阅读 · 0 评论 -
acwing128. 编辑器
栈的纯粹应用sumi表示为以i为结尾的最长匹配,然后就可以考虑转移当然每一种要单独考虑每一种的所以3个栈#include<bits/stdc++.h>using namespace std;string a;int n,sum[100005],maxl=-1;//sum[i]±íÊÇÒÔi½áβµÄ×ÃÀÀö×Ó´® //Èç¹ûÆ¥ÅäÆ¥Å䣬ÔÙ¼ì²...原创 2019-12-07 15:15:15 · 96 阅读 · 0 评论 -
acwing 41
第一次做交互题。。。。class MinStack {public: /** initialize your data structure here. */ MinStack() { } stack<int>qmin,qval; void push(int x) { qval.push(x); ...原创 2019-11-29 20:08:29 · 86 阅读 · 0 评论 -
acwing 830
模版。。。。#include<bits/stdc++.h>using namespace std;long long n,a;stack<long long>q;int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>a;//Èç¹û±ÈջͷС¾Ípopջͷ£¬else¾...原创 2019-11-29 18:58:55 · 193 阅读 · 0 评论 -
acwing829
水题#include<bits/stdc++.h>using namespace std;queue<int>q;int m,k;string a;int main(){ cin>>m; for(int i=1;i<=m;i++){ cin>>a; if(a=="push"){ cin>>k; ...原创 2019-11-27 17:06:35 · 113 阅读 · 0 评论 -
acwing828
水题#include<bits/stdc++.h>using namespace std;stack<int>q;int m,k;string a;int main(){ cin>>m; for(int i=1;i<=m;i++){ cin>>a; if(a=="push"){ cin>>k; ...原创 2019-11-27 17:05:46 · 149 阅读 · 0 评论