四道比较水的题

T1:SPFA+状压

 #include<stdio.h>
 #include<string.h>
 #include<algorithm>
 #include<queue>
 #define INF 0x3f3f3f3f
 using namespace std;
 ],dis[][],num,N,f[<<][],ans,vis[],mp[][];

 void get_dis(int num){
     queue<,sizeof(vis));
     Q.push(num); dis[num][num]=INF; vis[num]=;
     while (!Q.empty()){
         int now=Q.front(); Q.pop();
         ; i<=n; i++){
             ){
                 dis[num][i]=max(dis[num][i],min(dis[num][now],mp[now][i]));
                 ;
             }
         }
     }
 }

 int main(){
     scanf("%d%d%d", &n, &m, &K);
     ; i<=K; i++) scanf("%d", &id[i]);
     memset(dis,,sizeof(dis));
     ,u,v,w; i<=m; i++) scanf("%d%d%d", &u, &v, &w),mp[v][u]=mp[u][v]=w;
     ; i<=n; i++) get_dis(i);
     N=(<<K);
     ; i<=K; i++) f[<<(i-)][i]=;
     ; s<N; s++){
         num=;
         ; i<=K; i++) <<(i-))) num++;
         ; i<=K; i++) <<(i-))){
             ; j<=K; j++) <<(j-))))
                 <<(j-))][j]|=f[s][i];
         }
         ; i<=K; i++) <<(i-))) && f[s][i]){
             ]);
             ans=max(ans,t);
         }
     }
     printf("%d\n", ans);
     ;
 }

T2:裸RMQ

 #include<stdio.h>
 #include<string.h>
 #include<algorithm>
 #include<cmath>
 using namespace std;
 ;
 ];
 int main(){
     scanf("%d%d", &n, &m);
     ; i<=n; i++) scanf(]);
     ; (<<j)<=n; j++)
         ; i+(<<(j-))<=n; i++)
             f[i][j]=min(f[i][j-],f[i+(<<(j-))][j-]);
     ,a,b; i<=m; i++){
         scanf("%d%d", &a, &b);
         )/log();
         printf(<<t)+][t]));
     }
     ;
 }

T3:曼哈顿距离转切比雪夫距离

 #include<stdio.h>
 #include<algorithm>
 #include<string.h>
 #define INF 1000010
 using namespace std;
 int n,a,b,x,y,mxx,mxy,mnx,mny;
 int main(){
     scanf("%d", &n);
     mxx=mxy=-INF; mnx=mny=INF;
     ; i<=n; i++){
         scanf("%d%d", &a, &b);
         x=b+a; y=b-a;
         mnx=min(mnx,x); mxx=max(mxx,x);
         mny=min(mny,y); mxy=max(mxy,y);
     }
     printf("%d\n", max(mxx-mnx,mxy-mny));
     ;
 }

T4:set+最短路

 #include<stdio.h>
 #include<string.h>
 #include<queue>
 #include<set>
 #include<algorithm>
 using namespace std;
 ;
 struct node{
     int x,y,id;
     friend bool operator<(node a, node b){
         if (a.x==b.x) return a.y<b.y;
         return a.x<b.x;
     }
 };
 int n,t,x[maxn],y[maxn],dis[maxn];
 queue<int> Q;
 set<node> st;
 node mk(int x, int y, int id){
     node a; a.x=x; a.y=y; a.id=id; return a;
 }
 int main(){
     scanf("%d%d", &n, &t);
     ; i<=n; i++){
         scanf("%d%d", &x[i], &y[i]);
         st.insert(mk(x[i],y[i],i));
     }
     dis[]=; x[]=y[]=;
     Q.push();
     while (!Q.empty()){
         int now=Q.front(); Q.pop();
         ; i<=; i++) ; j<=; j++){
             int X=x[now]+i, Y=y[now]+j;
             ));
             if (next!=st.end()){
                 dis[next->id]=dis[now]+;
                 Q.push(next->id);
                 if (Y>=t){
                     printf("%d\n", dis[next->id]);
                     ;
                 }
                 st.erase(next);
             }
         }
     }
     puts("-1");
     ;
 }

bzoj3380+3381+3382+3383 Usaco2004 Open的更多相关文章

  1. Hsql中In没有1000的限制

    SELECT * FROM user , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ...

  2. 基于json的jquery地区联动探索

    贴一个基于jquery联动的代码,相信这样的代码有一大把,就当是jquery的练手吧, 写这个东西的初衷是来之于新浪微博,在新浪微博帐号设置里面有个地区的选项,使用js写的,想把它的代码给截获下来,可 ...

  3. JS逆向-抠代码的第二天【手把手学会抠代码】

    今天的学习项目:沃支付:https://epay.10010.com/auth/login 清空浏览器缓存后,打开网页,输入手机号,密码222222,按照网站要求填入验证码(sorry,我没有账号密码 ...

  4. 游戏中的自动寻路-A*算法(第一版优化——走斜线篇)

    一.简述以及地图 G 表示从起点移动到网格上指定方格的移动距离 (暂时不考虑沿斜向移动,只考虑上下左右移动). H 表示从指定的方格移动到终点的预计移动距离,只计算直线距离,走直角篇走的是直角路线. ...

  5. bzoj AC倒序

    Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...

  6. jqu

    1 /*2 * 说明:3 * 本源代码的中文注释乃Auscarlin呕心沥血所作.旨在促进jQuery的传播以及向广大jQuery爱好者提供一个进阶4 *的途径,以让各位更加深入地了解jQuery,学 ...

  7. 3381: [Usaco2004 Open]Cave Cows 2 洞穴里的牛之二

    3381: [Usaco2004 Open]Cave Cows 2 洞穴里的牛之二 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 21  Solved ...

  8. bzoj3380: [Usaco2004 Open]Cave Cows 1 洞穴里的牛之一(spfa+状压DP)

    数据最多14个有宝藏的地方,所以可以想到用状压dp 可以先预处理出每个i到j的路径中最小权值的最大值dis[i][j] 本来想用Floyd写,无奈太弱调不出来..后来改用spfa 然后进行dp,这基本 ...

  9. [BZOJ3380] [USACO2004 Open]Cave Cows 1 洞穴里的牛之一

    Description ​ 很少人知道其实奶牛非常喜欢到洞穴里面去探险. ​ 洞窟里有N(1≤N≤100)个洞室,由M(1≤M≤1000)条双向通道连接着它们.每对洞室间 至多只有一条双向通道.有K( ...

随机推荐

  1. 【日记】搭建一个node本地服务器

    用node搭建一个本地http服务器.首先了解htpp服务器原理 HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端.HTTP协议采用了请求/响应模型 ...

  2. C# Lamda中类似于SQL 中的 In 功能

    首先,在程序中接受一个数组 例如:int[] s=[1,2,3]; 在Lamda表达式中使用如下: db.userinfo.where(u=>s.Contains(u.id)); 等同于sql语 ...

  3. xss漏洞修复,待完善

    1.防止sql注入 /// <summary> /// 分析用户请求是否正常 /// </summary> /// <param name="Str" ...

  4. linux 查看目录所在的分区

    df -h /data2 Filesystem Size Used Avail Use% Mounted on /dev/xvda1 20G .5G 12G % /

  5. Oracle SQL的硬解析和软解析

    我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析.在Oracle中存在两种类型的SQL语句,一类为 DDL语句(数据定义语言),他们是从来不会共享使用的,也 ...

  6. Kafka、RabbitMQ、RocketMQ消息中间件的对比 —— 消息发送性能-转自阿里中间件

    引言 分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前段时间我们自家的产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注. ...

  7. POJ 2653 Pick-up sticks (线段相交)

    题意:给你n条线段依次放到二维平面上,问最后有哪些没与前面的线段相交,即它是顶上的线段 题解:数据弱,正向纯模拟可过 但是有一个陷阱:如果我们从后面向前枚举,找与前面哪些相交,再删除前面那些相交的线段 ...

  8. jquery中的ajax方法参数总是记不住,这里记录一下。

    1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如 ...

  9. three.js立方体

    <!DOCTYPE html> <html lang="en"> <head> <title>three.js webgl - ge ...

  10. 巴特沃斯(Butterworth)滤波器 (2) - 双线性变换

    这里接着上篇讲一下双线性变换Bilinear Transformation,它实现了模拟信号(连续域)与数字信号(离散域)之间的转换. 双线性变换公式如下: 反推可得到: 因此可以根据连续域传递函数推 ...