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

Why so serious? --[NKU]schindlerlee

2009年11月25日星期三.sgu106

2009年11月25日星期三.sgu106
這題終于過(guò)了......
太容易錯(cuò)了
忘了sgu是ms win,用%lld錯(cuò)了十幾次,干脆cin就得了,I64d在linux又編譯不了

106. The equation

There is an equation ax + by + c = 0. Given a,b,c,x1,x2,y1,y2 you must determine, how
many integer roots of this equation are satisfy to the following conditions :
x1<=x<=x2,   y1<=y<=y2. Integer root of this equation is a pair of integer numbers
(x,y).

Input
Input contains integer numbers a,b,c,x1,x2,y1,y2 delimited by spaces and line breaks.
All numbers are not greater than 108 by absolute value.

Output
Write answer to the output.

Sample Input
1 1 -3
0 4
0 4
Sample Output
4

首先在開(kāi)始正式講解之前我要說(shuō),原來(lái)除法不一定是下取整的。。。。
比如 1 / 2 = 0
但是-1 / 2 = 0;

所以我們要自己寫(xiě)上取整和下取整的函數(shù)
看到zzy的一個(gè)寫(xiě)法,很不錯(cuò),見(jiàn)代碼中的upper和lower

直線可以寫(xiě)成參數(shù)方程的模式
L1: p0 + t * v; t為實(shí)數(shù),v 為直線的方向向量

ax + by + c = 0;
首先可以把c移到右邊
ax + by = -c;
知道a,b可以利用擴(kuò)展歐幾里德公式求出p0和d,(d = gcd(a,b))
如果c不能整除d的話就沒(méi)有整數(shù)解,這點(diǎn)是顯然的,可以簡(jiǎn)單思考一下.

另外通過(guò)直線的幾何意義可以知道
v = (b ,-a)或
v = (-b, a)
取其中一個(gè)即可
tx = (x - x0)/b;
ty = (y - y0)/-a;

通過(guò)兩個(gè)去見(jiàn)求出tmin,tmax,之后
ans = tmax - tmin + 1就是結(jié)果,如果ans < 0 就是無(wú)解

此題破例貼代碼
 1 
 2 LL ans = 0;
 3 LL kmin = -300000000000000000LL, kmax = 300000000000000000LL;
 4 
 5 LL ext_gcd(LL a, LL b, LL & x, LL & y)
 6 {
 7     if (b == 0) {
 8         x = 1;
 9         y = 0;
10         return a;
11     } else {
12         LL d = ext_gcd(b, a % b, x, y);
13         LL t = x;
14         x = y;
15         y = t - a / b * y;
16         return d;
17     }
18 }
19 
20 LL upper(LL a, LL b)
21 {
22     if (a <= 0)
23         return a / b;;
24     return (a - 1/ b + 1;
25 }
26 
27 LL lower(LL a, LL b)
28 {
29     if (a >= 0)
30         return a / b;
31     return (a + 1/ b - 1;
32 }
33 
34 void update(LL L, LL R, LL a)
35 {
36     if (a < 0) {
37         L = -L;
38         R = -R;
39         a = -a;
40         swap(L, R);
41     }
42     kmin = max(kmin, upper(L, a));
43     kmax = min(kmax, lower(R, a));
44 }
45 
46 int main()
47 {
48     LL a, b, c, x1, x2, y1, y2, x0, y0;
49     cin >> a >> b >> c >> x1 >> x2 >> y1 >> y2; // sgu 是ms win,應(yīng)該用%I64d,我錯(cuò)了20幾次才發(fā)現(xiàn).
50     c = -c,ans = 0;
51     if (a == 0 && b == 0) {
52         if (c == 0)
53             ans = (LL) (x2 - x1 + 1* (y2 - y1 + 1);
54     } else if (a == 0) {
55         LL t = c / b;
56         ans = (c % b == 0 && t <= y2 && t >= y1) * (x2 - x1 + 1);
57     } else if (b == 0) {
58         LL t = c / a;
59         ans = (c % a == 0 && t <= x2 && t >= x1) * (y2 - y1 + 1);
60     } else {
61         LL d = ext_gcd(a, b, x0, y0);
62         if (c % d == 0) {
63             LL p = c / d;
64             update(x1 - p * x0, x2 - p * x0, b / d);
65             update(y1 - p * y0, y2 - p * y0, -/ d);
66             ans = kmax - kmin + 1;
67             if (ans < 0) ans = 0;
68         }
69     }
70     cout << ans << endl;
71     return 0;
72 }
73 
74 


posted on 2009-11-25 22:10 schindlerlee 閱讀(1390) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): 解題報(bào)告

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            狠狠久久亚洲欧美专区| 欧美一站二站| 久久成人羞羞网站| 亚洲小视频在线观看| 亚洲日韩成人| 亚洲精品小视频| 日韩视频在线免费| 亚洲少妇中出一区| 99riav久久精品riav| 一区二区三区精品在线| 亚洲六月丁香色婷婷综合久久| 最新国产の精品合集bt伙计| 91久久精品美女高潮| 99国内精品久久| 亚洲综合激情| 久久频这里精品99香蕉| 欧美成人精品福利| 亚洲美女网站| 黄色精品一区| 亚洲国产欧美在线人成| 一区二区三区国产盗摄| 新狼窝色av性久久久久久| 久久久美女艺术照精彩视频福利播放 | 欧美久久久久久久久久| 欧美日韩免费区域视频在线观看| 国产精品久久久久久久浪潮网站 | 欧美不卡激情三级在线观看| 亚洲国产一区二区三区a毛片| 91久久久国产精品| 午夜精品一区二区三区在线播放| 欧美在线free| 亚洲精品123区| 欧美亚洲色图校园春色| 欧美黑人在线播放| 国产一区日韩欧美| 亚洲综合久久久久| 欧美好骚综合网| 午夜一区不卡| 欧美视频在线观看视频极品| 国模精品娜娜一二三区| 亚洲图片在区色| 欧美大片在线观看| 久久久亚洲高清| 一本大道久久a久久综合婷婷| 亚洲大片免费看| 久久久人成影片一区二区三区| 亚洲精品永久免费| 久久一二三四| 国产亚洲毛片在线| 午夜宅男欧美| 一区二区三区日韩精品| 一区二区三区精品在线| 久久一区二区三区国产精品| 国产酒店精品激情| 亚洲男人的天堂在线| 亚洲人屁股眼子交8| 久久亚洲色图| 一区免费视频| 久久狠狠亚洲综合| 欧美一级免费视频| 亚洲中字黄色| 99综合视频| 欧美日韩在线播放三区| 99re8这里有精品热视频免费| 欧美高清在线一区二区| 久久亚洲精选| 在线欧美三区| 欧美黄色日本| 欧美激情第4页| 亚洲伦伦在线| 91久久久久久国产精品| 欧美日韩天天操| 中文网丁香综合网| 一区二区成人精品| 国产精品欧美日韩久久| 亚洲免费影视第一页| 亚洲欧美成人精品| 国产欧美日韩不卡免费| 久久精品国产一区二区三| 久久成人免费视频| 亚洲国产精品免费| 99精品福利视频| 国产精品你懂的在线欣赏| 午夜日韩在线观看| 久久精品99无色码中文字幕| 伊人久久久大香线蕉综合直播 | 久久精品一本| 久久久久久网站| 亚洲精品一区二区三区四区高清| 91久久视频| 国产嫩草一区二区三区在线观看| 久久男女视频| 欧美精品导航| 久久精品91久久香蕉加勒比| 久热精品视频在线观看一区| 宅男噜噜噜66国产日韩在线观看| 亚洲一区二区高清| 1024亚洲| 亚洲一区二区三区激情| 伊人成年综合电影网| 日韩一级黄色大片| 国内久久视频| 一区二区三区欧美亚洲| 韩国av一区| 一区二区三区**美女毛片| 国精品一区二区| 亚洲最新在线| 亚洲人成在线观看一区二区| 亚洲男女自偷自拍| av成人天堂| 久久精品国产久精国产爱| 夜夜爽www精品| 久久精品人人爽| 亚洲欧美视频在线| 欧美成人一区二区三区| 久久久久成人精品| 欧美特黄一区| 亚洲国产精品999| 国产一区二区三区在线观看免费| 亚洲精品视频在线观看网站| 激情久久久久久| 久久久91精品国产一区二区三区| 亚洲国产综合视频在线观看| 国产欧美精品日韩| 日韩亚洲综合在线| 亚洲日本中文字幕区| 久久嫩草精品久久久久| 久久精品视频va| 国产精品欧美日韩| 9国产精品视频| 亚洲精选91| 欧美国产三区| 亚洲成人中文| 久久久另类综合| 久久国产精品一区二区| 国产精品va在线播放| 亚洲女性裸体视频| 欧美另类视频| 欧美成人精品高清在线播放| 黑人操亚洲美女惩罚| 欧美一区二区私人影院日本 | 欧美激情第一页xxx| 欧美va亚洲va日韩∨a综合色| 国产在线一区二区三区四区 | 欧美日韩国产亚洲一区| 午夜精品久久久久久久久久久久久 | 亚洲美女啪啪| 欧美国产日本在线| 欧美激情一区二区三区全黄| 激情成人亚洲| 免费在线观看成人av| 亚洲国产精品久久久久秋霞不卡| 亚洲高清在线播放| 久久在线视频在线| 亚洲福利小视频| 夜夜精品视频一区二区| 国产精品videosex极品| 亚洲调教视频在线观看| 销魂美女一区二区三区视频在线| 国产伦精品一区二区三| 久久精品国产亚洲5555| 欧美电影在线| 亚洲特级片在线| 国产亚洲aⅴaaaaaa毛片| 久久精品免费看| 欧美激情一二三区| 亚洲欧美国产毛片在线| 韩国一区二区三区在线观看| 免费av成人在线| 亚洲天堂成人在线视频| 久久网站免费| 亚洲视频一起| 国产丝袜美腿一区二区三区| 免费成人美女女| 亚洲视频精品| 欧美www视频在线观看| 中国av一区| 伊人成人开心激情综合网| 欧美三级视频| 久久综合久久美利坚合众国| 99精品久久免费看蜜臀剧情介绍| 欧美精品福利视频| 久久久福利视频| 亚洲精品国产精品乱码不99按摩| 欧美三级在线视频| 久久先锋影音av| 亚洲自拍三区| 亚洲国产精品一区| 久久精精品视频| 9人人澡人人爽人人精品| 国产一区高清视频| 欧美日韩在线精品一区二区三区| 久久国产精品99国产精| 中文在线一区| 亚洲欧洲日韩在线| 免费成人网www| 欧美一区二区三区成人| 一本色道久久88综合日韩精品 | 国内精品久久久久久 | 久久久久国产精品一区三寸|