略蛋疼的一天

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吧,结果改了后果然过了,我擦啊啊啊,这不是闲到蛋疼吧,一条路径的流量还写几次,我靠,智商被碾压

posted @ 2014-04-06 18:19  cavehubiao  阅读(143)  评论(0编辑  收藏  举报