Why so serious? --[NKU]schindlerlee

2009年11月13日星期五.sgu486 sgu488 sgu496

2009年11月13日星期五.sgu486 sgu488 sgu496
今天去上午去实验室找老师,下午买了点咳嗽药,睡了很久,晚上查了查明天去北京的路线,
然后才起来今天还没做题....

上次sgu比赛没看到。。。
昨天wanbo说上次比赛中看到大家切题跟切菜一样,于是就看看,挑了三个过的人数多的,
都是简单题,3个1Y,Oh yeah,今天早睡,明天去北京见腾讯校园关系部的那个姐姐..


sgu486: Bulls and Cows简单题
sgu488:    Dales and Hills 动态规划
O(n)的扫描,四个数组

LU   ^    ^  RU     
    /      \       
   /        \      
  /          \     
                   
  \          /     
   \        /      
    \      /       
LD   v    v  RD    

边界条件考虑好,搞清关系即可
                   
sgu496:496     L-Shapes计算几何
点积判零即可
贴些代码,计算几何苦手可以试试这种风格。

const int N = 5050;
struct point_t { //struct 最好加_t以示清晰,加多了就习惯了
    int x,y;
    point_t(){}
    point_t(int a,int b){x = a,y = b;}
}L[N][2];

point_t operator + (point_t a,point_t b) { return point_t (a.x + b.x,a.y + b.y);}
point_t operator - (point_t a,point_t b) { return point_t (a.x - b.x,a.y - b.y);}
bool operator == (point_t a,point_t b) { return a.x == b.x && a.y == b.y;}

int dot_mul(point_t a,point_t b) { return a.x * b.x + a.y * b.y;}
bool isvertical(point_t a,point_t b,point_t c) { return dot_mul(a-b,b-c) == 0; }


posted on 2009-11-13 22:41 schindlerlee 阅读(1190) 评论(0)  编辑 收藏 引用 所属分类: 解题报告


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理