每天两个爆零小技巧,NOIP爆零,不再是梦!
其实是一堆zz错误罢了
Update 7.25
| #define maxn 100039 |
| double g[maxn]; |
| int n; |
| |
| scanf("%d",&n); |
| for(int i=1;i<=n;i++) |
| scanf("%d",&g[i]); |
| for(int i=1;i<=n;i++) |
| printf("%0.d ",g[i]); |
| #define maxn 100039 |
| struct JTZ{ |
| int a[maxn],m; |
| }edge[maxn]; |
Update 7.26
| while(!q.empty()){ |
| FLY cur=q.top(); q.pop(); |
| for(int i=head[cur.node];i;i=nex[i]) |
| if(to[i]==n){ |
| if(dist[to[i]]<dist[cur.node]+w[i]) |
| ans[1]=dist[n]=dist[cur.node]+w[i],cnt=1; |
| else ans[++cnt]=dist[cur.node]+w[i]; |
| q.push((FLY){n,dist[cur.node]+w[i]}); |
| if(cnt>=kk) return; |
| } |
| else if(dist[to[i]]<dist[cur.node]+w[i]){ |
| dist[to[i]]=dist[cur.node]+w[i]; |
| q.push((FLY){to[i],g[to[i]]+dist[to[i]]}); |
| } |
| } |
| if(dist[to[i]]<dist[cur.node]+w[i]) |
PS:这里求的是k短路
Update 7.28
| void find(int ux,int dx,int uy,int dy,int fx,int fy,int num){ |
| if(ux==dx) return; |
| if(uy==dy) return; |
| int mx=(ux+dx)>>1; |
| int my=(uy+dy)>>1; |
| if(fx<=mx&&fy<=my){ |
| a[mx][my+1]=num; a[mx+1][my]=num; a[mx+1][my+1]=num; |
| find(ux,mx,uy,my,fx,fy,num+1); |
| find(ux,mx,my+1,dy,mx,my+1,num+2); |
| find(mx+1,dy,uy,my,mx+1,my,num+3); |
| find(mx+1,dx,my+1,dy,mx+1,my+1,num+4); |
| } |
| if(fx<=mx&&fy>my){ |
| a[mx][my]=num; a[mx+1][my]=num; a[mx+1][my+1]=num; |
| find(ux,mx,uy,my,mx,my,num+1); |
| find(ux,mx,my+1,dy,fx,fy,num+2); |
| find(mx+1,dy,uy,my,mx+1,my,num+3); |
| find(mx+1,dx,my+1,dy,mx+1,my+1,num+4); |
| } |
| if(fx>mx&&fy<=my){ |
| a[mx][my]=num; a[mx][my+1]=num; a[mx+1][my+1]=num; |
| find(ux,mx,uy,my,mx,my,num+1); |
| find(ux,mx,my+1,dy,mx,my+1,num+2); |
| find(mx+1,dy,uy,my,fx,fy,num+3); |
| find(mx+1,dx,my+1,dy,mx+1,my+1,num+4); |
| } |
| if(fx>mx&&fy>my){ |
| a[mx][my]=num; a[mx][my+1]=num; a[mx+1][my]=num; |
| find(ux,mx,uy,my,mx,my,num+1); |
| find(ux,mx,my+1,dy,mx,my+1,num+2); |
| find(mx+1,dy,uy,my,mx+1,my,num+3); |
| find(mx+1,dx,my+1,dy,fx,fy,num+4); |
| } |
| return; |
| } |
PS:注意num数组的迭代。
| a[mx][my+1]=++cnt; a[mx+1][my]=cnt; a[mx+1][my+1]=cnt; |
写成
| a[mx][my+1]=++cnt; a[mx+1][my]=++cnt; a[mx+1][my+1]=++cnt; |
Update 7.31
| typedef long long ll; |
| int f[39]; |
| void init(){ |
| f[0]=1; |
| for(int i=1;i<=35;i++) |
| f[i]=f[i-1]<<1; |
| } |
| ll f[39]; |
| #define pow2(x) f[x] |
| int cnt=pow2(n-1)*pow2(n-1); |
十年OI一场空,不开longlong见祖宗
Update 8.3
| NODE x=find(n-1,(ll)num%(ll)cnt); |
PS:你有考虑过整除的时候吗?
Update 8.7
| struct JTZ{ |
| int x,y; |
| bool operator < (const JTZ x) const{ |
| if(this->x == x.x) return this->y<=x.y; |
| return this->x < x.x; |
| } |
| }tmp; |
| map<JTZ,bool> f; |
多了一个=...
Update:8.13
| for(int i=1;i<=n;i++) |
| for(int i=1;i<=n;i++) |
| inline int read(){ |
| char c=getchar(); |
| int sum=0; |
| while((c>'9'||c<'0')&&c!='-') c=getchar(); |
| while('0'<=c&&c<='9'){ |
| sum=(sum<<1)+(sum<<3)+(c^48); |
| c=getchar(); |
| } |
| return sum; |
| } |
PS:输入负数怎么办?
Update:8.14
| printf("%lld",&a[h+1][0]); |
Update:8.17
| int maxx=-1; |
| for(int i=0;i<=m;i++) |
| maxx=max(f[n][i][i+1][1],f[n][i][i+1][0]); |
| |
Update:8.21
| for(i=0;i<=m;i++){ |
| ans=min(ans,f[n][i][1]); |
| ans=min(ans,f[n][1][0]); |
| } |
Update:9.11
| for(int i=1;i<=n;i++){ |
| if(a[i]*(sum[l[i]+1 -1]-sum[r[i]-1]) > maxx) |
| maxx=a[i]*(sum[l[i]+1 -1]-sum[r[i]-1]); |
| } |
前缀和小减大...
Update:11.2
很久没有更了...
| for(int i=1;i<=n;i++) |
| for(int j=i+1;i<=n;i++) |
经 典 错 误
Update:2021.11.4
| void down(int rt,int ln,int rn){ |
| f1[rt<<1]*=f2[rt]; f1[rt<<1|1]*=f2[rt]; |
| f2[rt<<1]*=f2[rt]; f2[rt<<1|1]*=f2[rt<<1]; |
| s[rt<<1]*=f2[rt]; s[rt<<1|1]*=f2[rt]; |
| f1[rt<<1]+=f1[rt]; f1[rt<<1|1]+=f1[rt]; |
| s[rt<<1]+=f1[rt]*ln; s[rt<<1|1]+=f1[rt]*rn; |
| f1[rt]=0; f2[rt]=1; return; |
| } |
好像有一行不大一样...(线段树新写法
本文不定期更新……
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具