codeforces 659 D. Bicycle Race
来源:互联网 发布:软件如何做授权加密 编辑:程序博客网 时间:2024/04/19 01:25
水水的想了半天,没想出方法。。
难道只有无脑码代码了吗。。
最后也只有无脑的码起来了。。
我的方法好笨的。。。
判断内点。
顺时针跑的话,逆时针转弯爆炸
逆时针跑,顺时针转弯爆炸。。
由第一条和最后一条路判断怎么跑。。(这是我昨天的想法,是错的orz)
然后和做过的同志一起发现,数据只有顺时针跑ORZ。。
今天在电路课上,随意画了一个城堡,然后发现有问题。。
其实并不用去想顺时针跑还是逆时针跑。。
1.内点的数量一定比外点少
2.只要是内点,无论逆时针还是顺时针跑,都会入水
3.内点的顺序于外点相反。。所以直接min就可以了(4.22更新)。。。
#include<cstdio>#include<iostream>#include<cstring>#include<string>#include<algorithm>using namespace std;#define maxn 10010struct sb{ int x; int y;}way[maxn];int dir[maxn];int main(){ int n; cin>>n; int cnt=0; for(int i=1;i<=n+1;i++) { cin>>way[i].x>>way[i].y; } for(int i=2;i<=n+1;i++) { cnt++; if(way[i-1].x==way[i].x) { if(way[i].y>way[i-1].y) { dir[cnt]=1; } else { dir[cnt]=2; } } else { if(way[i-1].x>way[i].x) { dir[cnt]=3; } else { dir[cnt]=4; } } } int ans1=0,ans2=0; int type=0; //if((dir[1]==1&&dir[cnt]==4)||(dir[1]==2&&dir[cnt]==3)||(dir[1]==3&&dir[cnt]==1)||(dir[1]==4&&dir[cnt]==2)) //{ // type=1; //} //1 shang 2xia 3zuo 4 you; for(int i=1;i<cnt;i++) { if((dir[i]==1&&dir[i+1]==4)||(dir[i]==2&&dir[i+1]==3)||(dir[i]==3&&dir[i+1]==1)||(dir[i]==4&&dir[i+1]==2)) { ans1++; } else if(dir[i]!=dir[i+1]) ans2++; } //if(type) // cout<<ans1<<endl; //else // cout<<ans2<<endl; cout<<min(ans1,ans2)<<endl; //cout<<ans1<<" "<<ans2<<endl; return 0;}
0 0
- codeforces 659 D. Bicycle Race
- D - Bicycle Race CodeForces 659D
- Codeforces 659D Bicycle Race【计算几何】
- CodeForces 659D Bicycle Race(叉积)
- CodeForces - 659D Bicycle Race (数学几何&技巧转换)
- 简单数学题或者计算几何:Codeforces 659D-Bicycle Race
- CodeForces 659 D. Bicycle Race(计算几何 + 数学公式)
- Codeforces 659D Bicycle Race 【判定点是否在多边形内部】
- 判断点是否在多边形里面:CodeForces - 659D Bicycle Race
- Codeforces Round #346 (Div. 2) D. Bicycle Race
- Codeforces Round #346 (Div. 2) D. Bicycle Race
- Codeforces Round #346 (Div. 2) - D Bicycle Race
- Codeforces Round #346 (Div. 2) D. Bicycle Race
- Codeforces Round #346 (Div. 2) D Bicycle Race (叉积)
- cf - #346 D-Bicycle Race
- Codeforces Round #346 (Div. 2) D. Bicycle Race(点在多边形内部)
- Codeforces Round #346 (Div. 2)-D. Bicycle Race(规律或暴力)
- Bicycle Race
- 蓝牙讲解上--搜索、配对
- 多位数与一位数相乘
- IOS使用Jenkins进行持续集成
- 大数加法、大数乘法、大数减法。Swift。
- 多对多表的连接关系
- codeforces 659 D. Bicycle Race
- 分库分表
- Android中线程同步
- V4L2视频采集驱动框架
- s5pv210 jpeg硬件编码
- 01-复杂度1 最大子列和问题
- shiro 第二节 身份验证
- HBase2.0的可用性与一致性
- n乘1