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

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ù),v 為直線的方向向量

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

另外通過直線的幾何意義可以知道
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)  編輯 收藏 引用 所屬分類: 解題報告

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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| 欧美国产精品人人做人人爱| 日韩天堂在线视频| 亚洲一区二区三区四区视频| 国产一区二区按摩在线观看| 老色鬼久久亚洲一区二区 | 亚洲欧美在线看| 亚洲欧美www| 亚洲激情视频网| 亚洲免费观看高清在线观看 | 国产在线拍偷自揄拍精品| 久久九九免费| 欧美激情成人在线视频| 亚洲欧美日韩人成在线播放| 久久精品导航| 亚洲一本大道在线| 久久精品日韩欧美| 中国女人久久久| 久久午夜国产精品| 亚洲欧美清纯在线制服| 久久精品视频网| 亚洲私人影院在线观看| 欧美一区二区三区视频免费| aa成人免费视频| 久久成人精品电影| 亚洲一区二区三区777| 久久影院午夜片一区| 亚洲欧美国产va在线影院| 免费h精品视频在线播放| 午夜精品美女久久久久av福利| 久久综合影视| 久久激情综合| 国产精品久久久久999| 亚洲高清av| 国产亚洲视频在线| 一区二区精品国产| 日韩亚洲国产欧美| 久久久久高清| 久久嫩草精品久久久精品| 国产精品国产三级国产aⅴ浪潮| 欧美1区2区3区| 国产一区二区三区的电影 | 亚洲欧美日韩电影| 国产精品主播| 午夜一级在线看亚洲| 欧美国产日本韩| 欧美freesex8一10精品| 国模大胆一区二区三区| 亚洲免费婷婷| 亚洲男人天堂2024| 欧美日韩在线视频一区二区| 亚洲精品国产精品国产自| 亚洲国产精品成人综合| 久久综合精品国产一区二区三区| 久久久精品一品道一区| 国产乱码精品一区二区三区忘忧草| 日韩一区二区久久| 亚洲视频电影图片偷拍一区| 欧美另类在线播放| 日韩视频免费| 亚洲综合色网站| 国产精品美女久久久久久久 | 性久久久久久| 国产日韩av一区二区| 午夜精品视频在线| 久久久xxx| 在线日韩欧美视频| 欧美激情精品久久久久久免费印度 | 欧美电影专区| 亚洲免费观看高清完整版在线观看熊 | 国产精品稀缺呦系列在线| 亚洲一区二区精品在线| 欧美制服丝袜| 韩国av一区二区三区在线观看| 欧美一级片一区| 免费观看在线综合色| 亚洲精品综合在线| 国产精品日本欧美一区二区三区| 香蕉久久精品日日躁夜夜躁| 久久亚洲高清| av不卡在线观看| 国产精品视频九色porn| 欧美专区18| 亚洲清纯自拍| 久久狠狠亚洲综合| 亚洲精品一区二区三区四区高清| 欧美日韩精品系列| 性欧美长视频| 亚洲精品日韩一| 久久不见久久见免费视频1| 在线欧美日韩| 国产精品久久久久一区二区三区共 | 久久亚洲二区| 在线视频亚洲欧美| 国产在线拍偷自揄拍精品| 男女激情视频一区| 亚洲字幕在线观看| 亚洲第一在线| 久久成人免费日本黄色| 亚洲精品之草原avav久久| 国产欧美日韩亚州综合| 美日韩免费视频| 欧美一区二区三区精品电影| 亚洲福利久久| 久久免费视频在线| 午夜精品成人在线视频| 亚洲精品123区| 国产一区二区三区久久久久久久久| 欧美国产大片| 久久久亚洲综合| 性欧美长视频| 亚洲特色特黄| 亚洲精品老司机| 欧美大片在线看| 久久精品国产99国产精品| 亚洲一区二区三区乱码aⅴ| 亚洲区欧美区| 在线电影欧美日韩一区二区私密| 国产精品色午夜在线观看| 欧美日韩免费观看一区| 美女视频黄a大片欧美| 久久黄色小说| 欧美中在线观看| 欧美一区二区三区免费视| 亚洲欧美日本国产有色| 日韩午夜av| 日韩视频精品| 99re视频这里只有精品| 亚洲日韩中文字幕在线播放| 欧美aⅴ一区二区三区视频| 久久在线观看视频| 久久久噜噜噜久久久| 久久人人爽人人爽| 久久综合久久美利坚合众国| 久久国产精品99国产精| 久久不射2019中文字幕| 久久九九精品| 裸体素人女欧美日韩| 久久久午夜视频| 久久亚洲精品一区二区| 免费成人你懂的| 欧美国产日韩视频| 亚洲日本激情| av成人免费在线观看| 亚洲少妇自拍| 午夜综合激情| 久久亚洲国产成人| 欧美激情a∨在线视频播放| 欧美日韩精品在线播放| 欧美午夜精品久久久久久浪潮 | 国产精品影院在线观看| 国产日韩精品入口| 精品91在线| 最新国产の精品合集bt伙计| 亚洲美女视频| 午夜精品福利一区二区蜜股av| 欧美一区二区精品在线| 噜噜噜91成人网| 最近看过的日韩成人| 亚洲一区二区欧美日韩| 久久精品女人的天堂av| 欧美国产一区视频在线观看| 欧美色视频一区| 欧美精品在欧美一区二区少妇| 久久综合狠狠综合久久综青草 | 欧美精品免费在线| 国产精品免费在线| 一区在线观看视频| 亚洲最新在线| 久久久激情视频| 亚洲激情女人| 欧美伊久线香蕉线新在线| 欧美mv日韩mv亚洲| 国产欧美精品日韩区二区麻豆天美| 亚洲国产第一| 午夜精彩视频在线观看不卡 | 亚洲在线第一页| 免费日韩视频| 亚洲综合欧美日韩| 欧美激情一区| 亚洲电影免费观看高清完整版在线| 一区二区三区四区五区在线| 久久久综合网站| 一区二区三区高清在线| 久热这里只精品99re8久| 国产精品毛片va一区二区三区| 亚洲国产欧美在线人成| 亚洲欧洲99久久| 亚洲美女精品久久| 久久一二三四| 国产日韩欧美不卡在线| 国产精品99久久不卡二区| 欧美国产亚洲视频| 久久av老司机精品网站导航| 欧美新色视频| 99精品视频免费观看|