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

隨筆 - 68  文章 - 57  trackbacks - 0
<2010年3月>
28123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用鏈接

留言簿(8)

隨筆分類(74)

隨筆檔案(68)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

好久不寫了啊,最近打算重新啟用這個blog。就先寫這個題目吧,滿經典的。
【題目大意】
  m * n的區域內,每個整數坐標都有整點,問以這些整點為端點能夠形成多少個三角形。(0 < m, n <= 1000)

【題目分析】
  這個題目乍一看挺簡單的,但是想做對還是要仔細的思考下的。補集轉化的思想,求出所有共線的三元組,然后用總數減掉就是答案了,關鍵就是如何求共線三元組。x坐標相同和y坐標相同的比較好計算,在一條斜線的就不好算了,畫個圖發現,即使斜率相同的線,經過的格點數可能各不相同。思路當然還是枚舉y / x(不同的y / x確定了不同的矩形區域),之后如何有效的計算,我采用的方法可能有些麻煩,有點類容斥的方法。以斜率為a / b為例,(a, b) = g,那么m * n的區域內一定有(m - a + 1) * (n - b + 1)個那么大的矩形,這樣的矩形經過的格點數是(g + 1);然后因為同等斜率小一點的矩形(a - a / g, b - b / g)也是存在的,個數同樣可以統計出來,但是有些大矩形包括了,要去掉;因此就采用這種思想,先求出大矩形的個數,然后依次往下減,就可以避免重復計數了。雖然這樣復雜度有點高,不過極限數據還是比較快的跑出來了。
  說的可能不太清楚,具體代碼如下:
 1 #include <cstdio>
 2 #include <iostream>
 3 using namespace std;
 4 const int N = 1024;
 5 
 6 bool tag[N][N];
 7 long long calc(long long n)
 8 {
 9     if (n <= 2)
10         return 0;
11     return n * (n - 1* (n - 2/ 6;
12 }
13 int gcd(int a, int b)
14 {
15     return b == 0 ? a : gcd(b, a % b);
16 }
17 
18 int main()
19 {
20     int m, n, g, a, b, timer = 1, cnt[N], ta, tb;
21     long long ans;
22 
23     while (scanf("%d %d"&m, &n) == 2)
24     {
25         memset(tag, 0sizeof(tag));
26         if (m == 0 && n == 0)
27             break;
28         ans = calc((m + 1* (n + 1)) - calc(m + 1* (n + 1- calc(n + 1* (m + 1);
29         for (int i = m; i >= 1; i--)
30             for (int j = n; j >= 1; j--)
31             {
32                 g = gcd(i, j);
33                 a = i / g, b = j / g;
34                 if (tag[a][b])      continue;
35                 memset(cnt, 0sizeof(cnt));
36                 tag[a][b] = 1;
37                 a = i, b = j;
38                 ta = i / g, tb = j / g;
39                 for (int k = g; k >= 2; k--)
40                 {
41                     cnt[k] += (m - a + 1* (n - b + 1);
42                     ans -= calc(k + 1* cnt[k] * 2;
43                     for (int t = 1; t <= k - 2; t++)
44                         cnt[k-t] -= (t + 1* cnt[k];
45                     a -= ta, b -= tb;
46                 }
47             }
48         cout << "Case " << timer++ << "" << ans << endl;
49     }
50 
51     return 0;
52 }
53 
posted on 2009-10-15 19:54 sdfond 閱讀(388) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm - Number Theory 、Algorithm - Combinatorics
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久亚洲人| 久久久青草婷婷精品综合日韩| 亚洲一级黄色av| 在线国产亚洲欧美| 在线不卡欧美| 在线播放国产一区中文字幕剧情欧美| 国产伦精品一区二区三区视频黑人 | 女人天堂亚洲aⅴ在线观看| 欧美一区三区三区高中清蜜桃| 性欧美大战久久久久久久久| 欧美一区二区三区精品电影| 久久九九久久九九| 欧美激情一区二区久久久| 欧美日韩精品综合在线| 亚洲午夜精品| 亚洲精品国精品久久99热| 欧美成人xxx| 欧美视频一区二区三区…| 国产毛片一区| 亚洲经典在线看| 一区二区欧美日韩| 久久久97精品| 亚洲激情av在线| 欧美黄色影院| 午夜一级久久| 欧美日韩岛国| 亚洲狠狠丁香婷婷综合久久久| 亚洲影视九九影院在线观看| 亚洲靠逼com| 欧美日韩另类综合| 国产欧美日韩激情| 亚洲人成网站999久久久综合| 亚洲特级毛片| 国产日韩久久| 亚洲片区在线| 久久午夜电影网| 亚洲精品乱码| 欧美一区二区视频免费观看| 欧美日韩精品欧美日韩精品一| 国产亚洲欧美另类一区二区三区| 亚洲国产精品久久人人爱蜜臀| 日韩午夜精品| 久久久久国产精品厨房| 亚洲美女中文字幕| 久久久福利视频| 欧美日韩国产一区二区三区| 免费观看国产成人| 欧美日韩国产在线看| 国产主播一区二区三区| 亚洲视频在线二区| 欧美电影免费网站| 亚洲综合精品一区二区| 欧美成人自拍视频| 国产一区二区三区最好精华液| 99v久久综合狠狠综合久久| 久久久久久久一区| 艳妇臀荡乳欲伦亚洲一区| 久久免费国产精品1| 国产日韩欧美中文| 亚洲国产精品一区二区第四页av| 亚洲国产精品一区| 久久久国产一区二区三区| 一本久道久久综合婷婷鲸鱼| 美女视频黄a大片欧美| 国产亚洲精品久久久久婷婷瑜伽| 亚洲少妇诱惑| 亚洲剧情一区二区| 欧美aⅴ一区二区三区视频| 国产自产v一区二区三区c| 亚洲欧美在线高清| 亚洲国产美女久久久久| 久久久夜精品| 在线播放不卡| 欧美成人国产| 亚洲欧美国产高清| 国产精品成人观看视频国产奇米| 日韩午夜激情| 亚洲国产一区二区精品专区| 久久国产精品99国产精| 国产精品不卡在线| 亚洲网站啪啪| 一本久久综合亚洲鲁鲁五月天| 欧美人与禽性xxxxx杂性| 亚洲人成在线观看一区二区| 亚洲电影网站| 久久综合久久久久88| 亚洲美女中文字幕| 亚洲精品视频在线观看网站| 亚洲国产欧美一区二区三区同亚洲| 久久久综合激的五月天| 西瓜成人精品人成网站| 国产小视频国产精品| 欧美顶级大胆免费视频| 久热这里只精品99re8久| 亚洲日本免费电影| 亚洲精品国产品国语在线app| 欧美国产在线电影| 亚洲影音一区| 久久国产日本精品| 亚洲国产裸拍裸体视频在线观看乱了中文| 亚洲高清色综合| 欧美久久久久免费| 亚洲欧美日韩精品久久| 午夜精品久久| 亚洲欧洲综合另类| 一区二区三区久久久| 国产一区导航| 亚洲激情视频| 在线精品视频一区二区| 亚洲国产小视频在线观看| 欧美性生交xxxxx久久久| 欧美一区二区三区在线观看视频| 久久久午夜精品| 亚洲欧美怡红院| 久久精品91| 一区二区三区黄色| 欧美一区国产二区| 一区二区久久久久| 久久精品一区二区三区不卡| 一区二区三区精品| 欧美激情第8页| 久久国产精品电影| 欧美日韩精品中文字幕| 欧美va天堂| 国产精品一区久久久| 欧美91福利在线观看| 国产精品一区二区视频| 亚洲日本中文字幕免费在线不卡| 国产精品夜夜夜| 日韩亚洲欧美中文三级| 亚洲欧洲精品一区二区三区| 欧美一区二区久久久| 亚洲视频专区在线| 久久久久免费视频| 亚洲欧美精品一区| 欧美日韩精品久久| 欧美激情一区二区三区蜜桃视频| 在线日韩欧美视频| 欧美专区亚洲专区| 亚洲欧美在线免费| 欧美日韩国产bt| 亚洲成人自拍视频| 一区二区在线看| 亚洲欧美激情视频| 欧美色欧美亚洲另类二区| 一区二区三区色| 一区二区国产在线观看| 久久综合久久久| 日韩视频在线一区二区| 久久亚洲国产精品一区二区 | 亚洲国产高潮在线观看| 男女视频一区二区| 国产美女精品视频| 亚洲一级一区| 亚洲综合另类| 国产精品a级| 中文一区在线| 亚洲一卡二卡三卡四卡五卡| 欧美激情精品久久久久久久变态| 免费在线播放第一区高清av| 国产综合欧美| 久久香蕉国产线看观看av| 久久久一本精品99久久精品66| 国产精品主播| 欧美一区二区三区另类| 亚洲精品一区在线观看| 国产精品嫩草影院av蜜臀| 亚洲国产日韩一级| 99re6这里只有精品| 欧美美女喷水视频| 亚洲性视频网址| 欧美在线国产| 国产综合一区二区| 亚洲午夜一二三区视频| 免费亚洲电影在线| 亚洲美女诱惑| 国产精品久久久一区麻豆最新章节| 亚洲天堂网在线观看| 久久爱91午夜羞羞| 国产精品日本欧美一区二区三区| 久久精品一二三| 亚洲精品黄色| 欧美一区二视频在线免费观看| 韩国在线一区| 欧美理论电影在线观看| 性欧美videos另类喷潮| 亚洲美女淫视频| 久久久美女艺术照精彩视频福利播放 | 亚洲裸体俱乐部裸体舞表演av| 欧美日本国产精品| 午夜精品久久| 亚洲日本中文字幕区| 欧美在线视频免费播放| 依依成人综合视频| 欧美精品在线视频| 亚洲一级黄色av| 亚洲精选视频免费看| 老司机午夜精品视频在线观看| 日韩亚洲在线观看| 国外精品视频|