青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

gzwzm06

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  1 隨筆 :: 52 文章 :: 17 評論 :: 0 Trackbacks
如果用過Hash,那么可能主要是算坐標的問題
  1 #include <cstdio>
  2 #include <cmath>
  3 #include <algorithm>
  4 using namespace std ;
  5 
  6 const int MAXN = 1101 ;
  7 const int KEY = 20011 ;
  8 const int MUL = 33 ;
  9 
 10 struct NODE
 11 {
 12     int x , y ;
 13     NODE *next ;
 14 
 15     NODE(){ next = NULL; }
 16 }hash[KEY] , gTemp[MAXN];
 17 
 18 int gPos ;
 19 
 20 struct POINT
 21 {
 22     int x, y ;
 23          
 24 }g_star[MAXN] ;
 25 
 26 int N ;
 27 
 28 bool cmp( const POINT& a, const POINT& b )
 29 {
 30     if ( a.x < b.x ){
 31         return true ;
 32     }
 33     else if ( a.x == b.x )
 34     {
 35         if ( a.y > b.y )
 36         {
 37             return true ;
 38         }
 39         else
 40             return false ;
 41     }
 42     return false ;
 43 }
 44 //計算哈希值
 45 int Cal( const int& sx, const int& sy )
 46 {
 47     int val , x = abs(sx), y = abs(sy) ;
 48     
 49     val = (x * MUL + y) % KEY ;
 50 
 51     return val ;
 52 }
 53 
 54 bool Find( const int& x, const int& y )
 55 {
 56     int pos = Cal( x, y ) ;
 57 
 58     NODE *ptr = hash[pos].next ;
 59 
 60     while ( ptr )
 61     {
 62         if ( ptr->x == x && ptr->y == y )
 63         {
 64             return true ;
 65         }
 66         ptr = ptr->next ;
 67     }
 68 
 69     return false ;
 70 }
 71 
 72 void Insert( const int& x, const int& y )
 73 {
 74     int pos = Cal( x, y ) ;
 75 
 76     NODE *ptr = &gTemp[gPos++] ;
 77 
 78     ptr->x = x ;
 79     ptr->y = y ;
 80     ptr->next = hash[pos].next ;
 81     hash[pos].next = ptr ;
 82 }
 83 //判斷是否能組成一個正方形而且不重復
 84 bool Judge( const POINT& a, const POINT& b )
 85 {
 86     int dx = ( b.x - a.x ) , dy = ( b.y - a.y ) ;
 87     int x1, y1, x2, y2 ;
 88     int flag = dx * dy ;
 89         
 90         dx = abs(dx) ;
 91         dy = abs(dy) ;
 92 
 93     if ( flag > 0 )
 94     {        
 95         x1 = a.x - dy , y1 = a.y + dx ;
 96         x2 = b.x - dy , y2 = b.y + dx ;
 97     }
 98     else {
 99         x1 = a.x + dy , y1 = a.y + dx ;
100         x2 = b.x + dy , y2 = b.y + dx ;
101     }
102 
103         if ( x1 <= a.x )
104             return false ;
105 
106     if ( Find( x1, y1 ) && Find( x2, y2 ) )
107         return true ;
108     
109     return false ;
110 }
111 
112 void Init()
113 {
114     gPos = 0 ;
115     for ( int i = 0 ; i < KEY ; ++i )
116     {
117         hash[i].next = NULL ;
118     }
119 }
120 
121 int main()
122 {
123     //freopen("in", "r", stdin) ;
124 
125     int i , j , count ;
126 
127     while ( scanf("%d", &N) && N != 0 )
128     {
129         Init() ;
130         count = 0 ;
131 
132         for ( i = 0 ; i < N ; ++i )
133         {
134             scanf("%d %d", &g_star[i].x, &g_star[i].y) ;
135             Insert( g_star[i].x, g_star[i].y ) ;
136         }
137                 //按左到右,上到下
138                 sort(g_star, g_star + N, cmp) ;
139                 
140         for ( i = 0 ; i < N - 1 ; ++i )
141         {
142             for ( j = i + 1 ; j < N ; ++j )
143             {            
144                             if ( Judge(g_star[i], g_star[j]) )
145                 count++ ;
146                 
147             }
148         }
149 
150         printf("%d\n", count) ;
151     }
152 
153     return 0 ;
154 }
155 


posted on 2008-11-12 20:13 閱讀(304) 評論(0)  編輯 收藏 引用 所屬分類: Hash應用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一区二区黄| 一区二区久久久久久| 午夜一区不卡| 国产一区二区三区精品久久久| 亚洲欧美偷拍卡通变态| 日韩视频亚洲视频| 91久久线看在观草草青青| 免费av成人在线| 99国产精品久久久久久久| 亚洲精品免费在线| 欧美亚州一区二区三区| 亚洲欧美日韩精品综合在线观看| 亚洲专区一区| 影音先锋成人资源站| 亚洲国产99精品国自产| 欧美三级精品| 久久久久久精| 欧美精品亚洲精品| 欧美一区成人| 免费永久网站黄欧美| 亚洲色在线视频| 久久成人国产精品| 亚洲人成网站影音先锋播放| 亚洲人成7777| 国产精品一区在线观看你懂的| 快播亚洲色图| 欧美日韩亚洲不卡| 久久一区二区三区四区| 欧美伦理一区二区| 久久国产精品一区二区三区四区 | 亚洲一区二区三区在线播放| 午夜视频在线观看一区| 亚洲人成在线播放网站岛国| 亚洲午夜电影在线观看| 亚洲高清三级视频| 久久人人97超碰精品888| 欧美成人激情视频免费观看| 欧美亚洲一区| 欧美大片在线观看| 久久久久国产精品麻豆ai换脸| 欧美高清在线视频| 另类天堂av| 国产精品综合网站| 日韩一级在线| 亚洲人成网站在线观看播放| 欧美一区二区福利在线| 亚洲视频你懂的| 欧美1级日本1级| 久久网站免费| 国产亚洲视频在线| 中日韩视频在线观看| 夜夜嗨av一区二区三区四区| 老司机精品福利视频| 久久夜色精品亚洲噜噜国产mv| 国产精品乱码久久久久久| 亚洲精品色婷婷福利天堂| 国产精品福利久久久| 最新热久久免费视频| 永久免费精品影视网站| 欧美有码视频| 久久久久九九视频| 国产婷婷一区二区| 亚洲欧美国产毛片在线| 午夜在线精品偷拍| 国产精品一区二区三区免费观看| 99国产成+人+综合+亚洲欧美| 日韩亚洲不卡在线| 蜜臀av国产精品久久久久| 你懂的国产精品| 亚洲国产一区二区三区青草影视| 久久一区亚洲| 亚洲国产精品久久久久秋霞影院| 亚洲国产精品久久精品怡红院| 欧美专区在线观看一区| 久久这里有精品视频| 伊人久久大香线| 另类尿喷潮videofree | 午夜精品久久99蜜桃的功能介绍| 欧美日韩一二三区| 亚洲一级片在线看| 欧美在线欧美在线| 黄色日韩网站视频| 六月婷婷久久| 99国产精品99久久久久久| 亚洲一二区在线| 国产欧美日韩综合一区在线播放 | 蜜臀av在线播放一区二区三区| 激情伊人五月天久久综合| 美女亚洲精品| 一本大道久久a久久精品综合| 亚洲免费影视| 激情综合网激情| 欧美日韩免费一区| 午夜激情久久久| 欧美ab在线视频| 亚洲午夜久久久久久久久电影网| 国产欧美日韩一区二区三区| 久久天天狠狠| 一区二区三区视频在线看| 久久久久久久久岛国免费| 亚洲欧洲日夜超级视频| 国产精品久久久久久久久久尿 | 欧美高清在线播放| 亚洲一二三区视频在线观看| 国模精品娜娜一二三区| 欧美剧在线免费观看网站| 亚洲欧美日产图| 亚洲高清av| 久久久国产精品一区二区三区| 亚洲美女视频网| 黄色日韩精品| 国产精品女人毛片| 欧美h视频在线| 欧美一级专区| 夜夜嗨av一区二区三区免费区| 免费视频一区二区三区在线观看| 亚洲私人影院| 亚洲欧洲一区二区天堂久久 | 久久亚洲春色中文字幕久久久 | 久久九九全国免费精品观看| 日韩一级在线观看| 国产专区欧美专区| 欧美调教vk| 欧美高清视频www夜色资源网| 久久国产精品一区二区三区四区 | 久久久最新网址| 亚洲一区日韩在线| 日韩视频在线你懂得| 在线观看日韩精品| 国产视频欧美视频| 国产精品久久久久久久一区探花| 欧美黑人一区二区三区| 老司机午夜精品视频在线观看| 午夜久久tv| 亚洲欧美日本国产有色| 夜夜嗨av一区二区三区网页| 亚洲第一二三四五区| 久久在线免费视频| 久久精品在线| 久久精品一区二区三区中文字幕| 亚洲欧美日韩综合一区| 亚洲一区二区高清| 亚洲午夜精品一区二区三区他趣| 亚洲免费观看| 一区二区三区久久精品| 一区二区国产精品| 亚洲午夜黄色| 亚洲影院一区| 亚洲欧美日韩久久精品 | 伊人久久大香线蕉av超碰演员| 国产亚洲精品久| 国产在线观看精品一区二区三区| 国产乱码精品1区2区3区| 国产欧美日韩麻豆91| 国产日韩欧美一区二区三区在线观看 | 欧美一区二区视频在线观看| 亚洲一区免费网站| 亚洲欧美日韩国产成人精品影院| 亚洲自拍16p| 久久久夜夜夜| 欧美激情第3页| 亚洲国产精品99久久久久久久久| 亚洲日本aⅴ片在线观看香蕉| 91久久综合| 亚洲性视频网站| 性色av香蕉一区二区| 久久久久综合| 欧美日产国产成人免费图片| 国产精品久久久久久久久久尿| 国产亚洲视频在线| 亚洲三级色网| 亚洲制服丝袜在线| 久久国产一区二区| 欧美国产精品专区| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 欧美自拍偷拍| 蜜桃伊人久久| 亚洲美女网站| 欧美一区二区三区精品| 久久综合狠狠综合久久综合88| 欧美激情片在线观看| 国产精品日韩在线一区| 尤妮丝一区二区裸体视频| 日韩视频中文| 久久久久久久999精品视频| 欧美激情性爽国产精品17p| 在线亚洲电影| 麻豆免费精品视频| 国产精品成人一区二区| 在线观看91精品国产麻豆| 中文在线一区| 老司机久久99久久精品播放免费| 亚洲欧洲另类| 久久久在线视频| 国产精品综合| 亚洲美洲欧洲综合国产一区| 欧美中文字幕在线| 夜夜嗨av一区二区三区四区| 久久精品国产99精品国产亚洲性色| 欧美精品麻豆|