以后不放水题了

C.NN and the Optical Illusion

复习一下高中数学即可

$\frac{ans}{ans+r}=\sin \frac{\pi}{n}$

解方程

 #include<cmath>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const double pai=acos(-);
int n,d; double a;
int main()
{
scanf("%d%d",&n,&d),a=pai/n;
printf("%f",sin(a)*d/(-sin(a)));
return ;
}

D.Dasha and Chess

先走到中间,然后背对着车最少的那个角落走,根据咕咕原理可知这边最少有 666*3/4=499.5— —也就是500 只车,而走过去只需要499步,所以一定能被将到;总步数最多499+499步

  #include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=;
pair<int,int> rook[N];
int t1,t2,t3,kx,ky,mini;
int ocp[N][N],cnt[][];
void Check()
{
if(t1<=) exit();
}
void Move(int xx,int yy)
{
kx+=xx,ky+=yy;
if(ocp[kx][ky]) kx-=xx;
printf("%d %d\n",kx,ky),fflush(stdout);
scanf("%d%d%d",&t1,&t2,&t3),Check();
int rx=rook[t1].first,ry=rook[t1].second;
ocp[rx][ry]=false,rook[t1]=make_pair(t2,t3),ocp[t2][t3]=true;
}
int main()
{
scanf("%d%d",&kx,&ky),mini=1e9;
for(int i=;i<=;i++)
{
scanf("%d%d",&t1,&t2);
rook[i]=make_pair(t1,t2),ocp[t1][t2]=true;
}
while(kx<) Move(,);
while(kx>) Move(-,);
while(ky<) Move(,);
while(ky>) Move(,-);
for(int i=;i<=;i++)
for(int j=;j<=;j++)
if(ocp[i][j]) cnt[i>][j>]++;
for(int i=;i<=;i++)
for(int j=;j<=;j++)
if(cnt[i][j]<mini) mini=cnt[i][j];
for(int i=;i<=;i++)
for(int j=;j<=;j++)
if(cnt[i][j]==mini)
while(true) Move(i?-:,j?-:);
return ;
}

E.Andrew and Taxi

首先一定有解,构造方法是所有边都是小编号指向大编号,那么二分答案对大于答案的边跑拓扑排序检验即可

 #include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=;
struct a
{
int u,v,w;
}edg[N];
int p[N],noww[N],goal[N];
int deg[N],idx[N],que[N],outp[N];
int n,m,f,b,t1,t2,t3,cnt,num,ans;
void Link(int f,int t)
{
noww[++cnt]=p[f],p[f]=cnt;
goal[cnt]=t,deg[t]++;
}
bool Nocir(int x)
{
num=,cnt=,f=,b=-;
memset(p,,sizeof p);
memset(deg,,sizeof deg);
for(int i=;i<=m;i++)
if(edg[i].w>x)
Link(edg[i].u,edg[i].v);
for(int i=;i<=n;i++)
if(!deg[i]) que[++b]=i;
while(f<=b)
{
int tn=que[f++]; idx[tn]=++num;
for(int i=p[tn];i;i=noww[i])
if(!(--deg[goal[i]]))
que[++b]=goal[i];
}
for(int i=;i<=n;i++)
if(deg[i]) return false;
return true;
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=m;i++)
{
scanf("%d%d%d",&t1,&t2,&t3);
edg[i]=(a){t1,t2,t3},ans=max(ans,t3);
}
int l=,r=ans;
while(l<=r)
{
int mid=(l+r)/;
if(Nocir(mid)) r=mid-,ans=mid;
else l=mid+;
}
Nocir(ans);
for(int i=;i<=m;i++)
if(edg[i].w<=ans&&idx[edg[i].u]>idx[edg[i].v])
outp[++outp[]]=i;
printf("%d %d\n",ans,outp[]);
for(int i=;i<=outp[];i++)
printf("%d ",outp[i]);
return ;
}

F.Ivan and Burgers

恭喜出题人获得了“出到原题”成就

???

然后就被踩标算了。。。

 #include<cstdio>
#include<vector>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=,K=;
vector<pair<int,int> > ve[N];
vector<pair<int,int> > ::iterator it;
int n,m,t1,t2,val[N],ans[N],bas[K],pos[K];
void Insert(int x,int y)
{
for(int i=;~i;i--)
if(x&(<<i))
{
if(!bas[i])
{
bas[i]=x,pos[i]=y;
return;
}
if(y>pos[i])
swap(x,bas[i]),swap(y,pos[i]);
x^=bas[i];
}
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&val[i]);
scanf("%d",&m);
for(int i=;i<=m;i++)
{
scanf("%d%d",&t1,&t2);
ve[t2].push_back(make_pair(t1,i));
}
for(int i=;i<=n;i++)
{
Insert(val[i],i);
for(it=ve[i].begin();it!=ve[i].end();it++)
{
int lef=it->first,idx=it->second;
for(int j=;~j;j--)
if(pos[j]>=lef&&(ans[idx]^bas[j])>ans[idx])
ans[idx]^=bas[j];
}
}
for(int i=;i<=m;i++)
printf("%d\n",ans[i]);
return ;
}

Codeforces Round #532的更多相关文章

  1. Codeforces Round #532 (Div. 2)

    Codeforces Round #532 (Div. 2) A - Roman and Browser #include<bits/stdc++.h> #include<iostr ...

  2. Codeforces Round #532 (Div. 2) 题解

    Codeforces Round #532 (Div. 2) 题目总链接:https://codeforces.com/contest/1100 A. Roman and Browser 题意: 给出 ...

  3. Codeforces Round #532 (Div. 2) F 线性基(新坑) + 贪心 + 离线处理

    https://codeforces.com/contest/1100/problem/F 题意 一个有n个数组c[],q次询问,每次询问一个区间的子集最大异或和 题解 单问区间子集最大异或和,线性基 ...

  4. Codeforces Round #532 (Div. 2):F. Ivan and Burgers(贪心+异或基)

    F. Ivan and Burgers 题目链接:https://codeforces.com/contest/1100/problem/F 题意: 给出n个数,然后有多个询问,每次回答询问所给出的区 ...

  5. Codeforces Round #532 (Div. 2)- B(思维)

    Arkady coordinates rounds on some not really famous competitive programming platform. Each round fea ...

  6. Codeforces Round #532(Div. 2) C.NN and the Optical IIIusion

    链接:https://codeforces.com/contest/1100/problem/C 题意: 一个圆球外面由其他圆球包裹,两两相连. 给出n,r. n为外面圆球数量,r为内部圆球半径. 求 ...

  7. Codeforces Round #532(Div. 2) B.Build a Contest

    链接:https://codeforces.com/contest/1100/problem/B 题意: 给n,m. 给m个数,每个数代表一个等级,没给一个将其添加到题目池中,当题目池中有难度(1-n ...

  8. Codeforces Round #532(Div. 2) A.Roman and Browser

    链接:https://codeforces.com/contest/1100/problem/A 题意: 给定n,k. 给定一串由正负1组成的数. 任选b,c = b + i*k(i为任意整数).将c ...

  9. Codeforces Round #532 (Div. 2) E. Andrew and Taxi(二分+拓扑排序)

    题目链接:https://codeforces.com/contest/1100/problem/E 题意:给出 n 个点 m 条边的有向图,要翻转一些边,使得有向图中不存在环,问翻转的边中最大权值最 ...

随机推荐

  1. Netty源码分析第6章(解码器)---->第2节: 固定长度解码器

    Netty源码分析第六章: 解码器 第二节: 固定长度解码器 上一小节我们了解到, 解码器需要继承ByteToMessageDecoder, 并重写decode方法, 将解析出来的对象放入集合中集合, ...

  2. 2019第十届蓝桥杯C++B组题解(赛后重写的,不确保答案正确性,仅供参考)

    先说一下这次的感受吧,我们考场比较乱,开始比赛了,还有的电脑有故障,(向这些人发出同情),第一次认真参加比赛,真正比赛的时候感觉没有那么正式,很乱,各种小问题,(例如博主就没找到题目在哪里,找到后又不 ...

  3. 导出excel失败,提示提示加载类型库/DDL出错

    首先,这里提供的解决办法仅适用于出现如下异常的情况:无法将类型为“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 对象强制转换为接口类型“M ...

  4. [buaa-SE-2017]个人作业-week3

    个人作业-week3:案例分析 分析产品:Bing词典 Part1:调研&评测 1.软件评测和Bug汇报 这次我选择Bing词典的原因是在于,首先我使用过的词典软件较多,平台涵盖PC端.网站. ...

  5. url传多值问题

    使用url传值的特点是操作简单,虽然安全性低,但依然广泛运用. url传数据绑定的值: <a href='Default.aspx?id=<%#Eval("ID")%& ...

  6. 第二阶段Sprint冲刺会议7

    进展:试着把视频录制功能加到时间提醒中,但是整合没有成功,今天没有进展.

  7. VMware上配置DPDK环境并运行实例程序

    1. 在虚拟机VMware上配置环境 VMware安装:http://www.zdfans.com/html/5928.html Ubuntu:https://www.ubuntu.com/downl ...

  8. python learning Network Programming.py

    Socket # 用一个 Socke t表示"打开了一个网络连接" # 打开一个 Socket 需要知道目标计算机的IP地址和端口号,再指定协议类型即可. # TCP # 主动发起 ...

  9. Eclipse下高亮显示Freemarker文件

    让eclipse高亮显示freemarker文件有两种方式,一种是安装JBoss的插件,一种是用JSP编辑器打开freemarker的文件.我使用第二种方式来完成. 打开eclipse,点击windo ...

  10. 05_Java基础语法_第5天(方法)_讲义

    今日内容介绍 1.方法基础知识 2.方法高级内容 3.方法案例 01方法的概述 * A: 为什么要有方法 * 提高代码的复用性 * B: 什么是方法 * 完成特定功能的代码块. 02方法的定义格式 * ...