略蛋疼的一天
cf上的239div_triangle那题,参考了别人的思路,
相等与直角在原点,开始两直角边就在xy轴上,然后逐渐旋转,那么可以旋转时,新点的y坐标就是sqrt(x*x-i*i),于是暴力即可。注意可能旋转时导致两点y坐标相等,使得斜边平行与x轴,所以有个判断。
/* Author:cavehubiao Mail:cavehubiao@qq.com MyBlog:http//www.cnblogs.com/cavehubiao */ #include<iostream> #include<cstdio> #include<cmath> #include<string> #include<vector> #include<set> #include<map> #include<algorithm> #include<cstring> using namespace std; int main() { int a,b; cin>>a>>b; int ia,ib,i,j; bool ok=0,flag=0; for(i=1;i<a;i++) { for(j=1;j<b;j++) { ia=sqrt(a*a-i*i); ib=sqrt(b*b-j*j); if(ia==sqrt(a*a-i*i)&&ib==sqrt(b*b-j*j)) { if(i!=ib&&ia*j==ib*i) { ok=1; flag=1; break; } } } if(flag) break; } if(!ok) cout<<"NO"<<endl; else { cout<<"YES"<<endl; cout<<0<<' '<<0<<endl; cout<<-ia<<' '<<i<<endl; cout<<j<<' '<<ib<<endl; } return 0; }
然后是想着把以前看的usaco上最大流的一题拿过来写写,那时还没看过,完全照抄的。
这次写完调了2处错误后到了test9就是过不去,我对着原来别人的代码看了又看,终于发现我的输入是edge[a][b]=z,别人的是edge[a][b]+=z...
我草,不会数据里有重复的ab吧,结果改了后果然过了,我擦啊啊啊,这不是闲到蛋疼吧,一条路径的流量还写几次,我靠,智商被碾压