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

Why so serious? --[NKU]schindlerlee

2009年11月25日星期三.sgu106

2009年11月25日星期三.sgu106
這題終于過了......
太容易錯了
忘了sgu是ms win,用%lld錯了十幾次,干脆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

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

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

直線可以寫成參數(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的話就沒有整數(shù)解,這點(diǎn)是顯然的,可以簡單思考一下.

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

通過兩個去見求出tmin,tmax,之后
ans = tmax - tmin + 1就是結(jié)果,如果ans < 0 就是無解

此題破例貼代碼
 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,我錯了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 閱讀(1386) 評論(0)  編輯 收藏 引用 所屬分類: 解題報(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>
            伊人久久噜噜噜躁狠狠躁| 99热在线精品观看| 日韩视频二区| 亚洲人成欧美中文字幕| 在线观看一区二区视频| 一区二区三区自拍| 亚洲美女淫视频| 西西人体一区二区| 久久久精品一区| 欧美国产一区在线| 亚洲精品中文字幕女同| 亚洲尤物在线| 久久最新视频| 国产精品国产馆在线真实露脸| 亚洲日韩视频| 国产精品观看| 国内精品免费在线观看| 亚洲精品免费在线播放| 亚洲欧美综合精品久久成人 | 亚洲精品国精品久久99热| 亚洲精选在线| 久久av资源网站| 最近看过的日韩成人| 欧美成人综合网站| 亚洲视频欧洲视频| 蜜桃精品一区二区三区| 国产精品欧美日韩一区| 亚洲裸体视频| 蜜桃久久精品乱码一区二区| 一本久久精品一区二区| 久久一区二区三区四区五区| 欧美日韩不卡合集视频| 国产欧美精品日韩| 一区二区三区**美女毛片| 久久亚洲欧美国产精品乐播| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲毛片在线观看.| 性欧美xxxx视频在线观看| 欧美黄色一级视频| 午夜久久黄色| 国产精品乱码一区二三区小蝌蚪| 亚洲破处大片| 玖玖玖国产精品| 午夜精品三级视频福利| 国产精品夫妻自拍| 在线视频精品一区| 亚洲国产精品第一区二区| 久久不射中文字幕| 国产亚洲激情| 久久国产66| 亚洲欧美一区二区三区久久| 欧美日韩亚洲一区在线观看| 亚洲日韩欧美一区二区在线| 亚洲电影免费观看高清完整版在线| 午夜精品视频一区| 国产欧美亚洲视频| 久久国产精品久久久久久久久久| 中文久久乱码一区二区| 欧美香蕉视频| 小嫩嫩精品导航| 亚洲一区二区在线播放| 国产精品久久久久一区| 亚洲欧美日韩综合aⅴ视频| 一区二区三区四区国产| 国产精品久久久久久久久久久久久久 | 亚洲国内自拍| 欧美成人午夜77777| 91久久夜色精品国产九色| 欧美成人中文| 欧美激情区在线播放| 亚洲最新在线视频| 亚洲视频一区二区| 国产一级一区二区| 欧美成人乱码一区二区三区| 欧美成人精品福利| 中文国产成人精品| 亚洲影视在线播放| 激情久久久久久| 欧美激情中文不卡| 欧美日韩亚洲免费| 久久精品国产第一区二区三区最新章节| 亚洲欧美三级伦理| 亚洲国产美国国产综合一区二区| 亚洲国产精品成人综合色在线婷婷| 欧美日韩国产一中文字不卡| 亚洲欧美一区二区精品久久久| 欧美伊久线香蕉线新在线| 一区精品在线| 亚洲精品中文字幕女同| 国产亚洲欧美日韩日本| 亚洲国产日韩综合一区| 欧美亚韩一区| 欧美不卡视频一区发布| 欧美日韩中文另类| 蜜桃av一区| 国产精品综合| 亚洲茄子视频| 国产自产2019最新不卡| 亚洲乱码国产乱码精品精| 国产一区亚洲一区| 在线亚洲欧美视频| 亚洲国产精品视频| 午夜视频在线观看一区二区| 日韩午夜激情av| 久久精品人人做人人爽| 亚洲自拍16p| 欧美成人国产一区二区| 欧美在线视频免费| 欧美日韩一区二区三区四区五区| 久久这里有精品视频| 国产精品久久久久免费a∨| 亚洲国产精品嫩草影院| 国语对白精品一区二区| 亚洲网站啪啪| 一区二区日韩免费看| 欧美1区2区| 卡一卡二国产精品| 国产免费成人av| 夜夜嗨av色综合久久久综合网| 亚洲国产第一| 久久精品夜色噜噜亚洲a∨| 午夜精品成人在线视频| 欧美日一区二区三区在线观看国产免| 男人的天堂成人在线| 国产在线乱码一区二区三区| 亚洲伊人一本大道中文字幕| 亚洲午夜日本在线观看| 欧美日韩国产系列| 亚洲国产高清aⅴ视频| 裸体歌舞表演一区二区| 亚洲九九精品| 欧美激情第8页| 欧美韩日精品| 亚洲国产cao| 久久亚洲国产成人| 欧美福利精品| 亚洲日本中文字幕| 欧美国产日产韩国视频| 亚洲国产婷婷综合在线精品 | 亚洲电影下载| 亚洲精品国产精品国自产观看| 久久影视精品| 欧美激情网友自拍| 亚洲精品一区二区三区婷婷月| 欧美成人免费在线| 亚洲人久久久| 亚洲午夜伦理| 国产日韩一级二级三级| 久久国产主播| 欧美国产先锋| 一区二区欧美精品| 国产精品一区免费在线观看| 性欧美videos另类喷潮| 久久夜色精品国产欧美乱| 一区二区在线观看视频在线观看| 久久亚洲国产精品一区二区| 亚洲人成在线播放网站岛国| 亚洲欧美日韩精品久久久久| 国产视频久久网| 久久在线免费视频| 99香蕉国产精品偷在线观看| 性欧美video另类hd性玩具| 精品不卡在线| 欧美日韩精品高清| 久久成人人人人精品欧| 亚洲黄色成人| 午夜亚洲影视| 亚洲第一在线视频| 欧美吻胸吃奶大尺度电影| 久久精品国产成人| 日韩午夜av在线| 麻豆精品精华液| 亚洲免费在线视频| 亚洲国产精品ⅴa在线观看| 欧美午夜不卡在线观看免费| 久久激情五月激情| 一本色道综合亚洲| 欧美国产日韩a欧美在线观看| 亚洲男人天堂2024| 91久久精品一区| 国产一区二区三区高清播放| 欧美激情在线观看| 久久久久久欧美| 午夜一区二区三区不卡视频| 亚洲片区在线| 欧美高清hd18日本| 久久久精品一区| 亚洲欧美日韩系列| 99视频超级精品| 亚洲国产精品t66y| 海角社区69精品视频| 国产精品久久精品日日| 欧美华人在线视频| 久久亚洲色图| 久久久久久日产精品| 欧美制服丝袜| 欧美亚洲一区二区在线观看| 在线中文字幕日韩| 欧美伊人久久| 欧美尤物一区|