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

直接按照題目意思模擬即可。關鍵是需要實現有理數運算。我的方法是重載運算符。

 

/*************************************************************************
Author: WHU_GCC
Created Time: 2007-10-21 12:25:06
File Name: g.cpp
Description: 
***********************************************************************
*/

#include 
<iostream>
using namespace std;
#define out(x) (cout<<#x<<": "<<x<<endl)
const int maxint=0x7FFFFFFF;
typedef 
long long int64;
const int64 maxint64 = 0x7FFFFFFFFFFFFFFFLL;
template
<class T>void show(T a, int n){for(int i=0; i<n; ++i) cout<<a[i]<<' '; cout<<endl;}
template
<class T>void show(T a, int r, int l){for(int i=0; i<r; ++i)show(a[i],l);cout<<endl;}

struct real
{
    int64 a, b;
}
;

struct point
{
    real x, y;
}
;

int64 gcd(int64 a, int64 b)
{
    
return b == 0 ? a : gcd(b, a % b);
}


int64 lcm(int64 a, int64 b)
{
    
return a / gcd(a, b) * b;
}


real 
operator +(real a, real b)
{
    int64 l 
= lcm(a.b, b.b);
    real ret;
    ret.a 
= a.a * l / a.b + b.a * l / b.b;
    ret.b 
= l;
    
return ret;
}


real 
operator -(real a, real b)
{
    int64 l 
= lcm(a.b, b.b);
    real ret;
    ret.a 
= a.a * l / a.b - b.a * l / b.b;
    ret.b 
= l;
    
return ret;    
}


real 
operator *(real a, real b)
{
    int64 g1 
= gcd(a.b, b.a), g2 = gcd(a.a, b.b);
    real ret;
    ret.a 
= a.a / g2 * (b.a / g1);
    ret.b 
= a.b / g1 * (b.b / g2);
    
return ret;
}


real 
operator /(real a, real b)
{
    swap(b.a, b.b);
    
return a * b;
}


real cross(real a, real b, real c, real d)
{
    
return a * d - b * c;
}


bool operator ==(real a, real b)
{
    
return a.a == b.a && a.b == b.b;
}


bool operator ==(point a, point b)
{
    
return a.x == b.x && a.y == b.y;
}


point inter(point p1, point p2, point p3, point p4)
{
    real a11 
= p2.y - p1.y;
    real a12 
= p1.x - p2.x;
    real a21 
= p4.y - p3.y;
    real a22 
= p3.x - p4.x;
    real b1 
= p1.x * p2.y - p2.x * p1.y;
    real b2 
= p3.x * p4.y - p4.x * p3.y;
    point ret;
    ret.x 
= cross(b1, a12, b2, a22) / cross(a11, a12, a21, a22);
    ret.y 
= cross(a11, b1, a12, b2) / cross(a11, a12, a21, a22);
    
return ret;
}


point p[
1000];

int main()
{
    
int n, m;
    scanf(
"%d"&n);
    
for (int i = 0; i < n; i++)
    
{
        
int t1, t2;
        scanf(
"%d%d"&t1, &t2);
        p[i].x.a 
= t1;
        p[i].x.b 
= 1;
        p[i].y.a 
= t2;
        p[i].y.b 
= 1;
    }

    scanf(
"%d"&m);
    
int ans = 0;
    
for (int i = 0; i < m; i++)
    
{
        
int t1, t2, t3, t4;
        scanf(
"%d%d%d%d"&t1, &t2, &t3, &t4);
        t1
--;
        t2
--;
        t3
--;
        t4
--;
        point t 
= inter(p[t1], p[t2], p[t3], p[t4]);
        
int flag = 1;
        
for (int j = 0; j < n; j++)
            
if (t == p[j])
            
{
                flag 
= 0;
                
break;
            }

        
if (flag)
            p[n
++= t;
        
if (ans == 0 && t.x.a == 0 && t.y.a == 0)
            ans 
= i + 1;
    }

    printf(
"%d\n", ans);
    
return 0;
}
posted on 2007-10-22 13:50 Felicia 閱讀(623) 評論(3)  編輯 收藏 引用 所屬分類: 計算幾何
Comments
  • # re: [計算幾何]pku3429
    dfd
    Posted @ 2009-04-30 13:33
    ret.x = cross(b1, a12, b2, a22) / cross(a11, a12, a21, a22);
    ret.y = cross(a11, b1, a12, b2) / cross(a11, a12, a21, a22);

    這里的ret.y 不是等于cross(a11,b1,a21,b2)  回復  更多評論   
  • # re: [計算幾何]pku3429
    neko13
    Posted @ 2012-03-30 23:14
    分數加法溢出了  回復  更多評論   
  • # re: [計算幾何]pku3429
    neko13
    Posted @ 2012-03-30 23:14
    Real operator + (Real a, Real b) {
    int64 l = Lcm(a.den, b.den);
    Real ret;
    ret.num = a.num*l/a.den + b.num*l/b.den;
    ret.den = l;

    int64 g = Gcd(ret.num, ret.den);
    ret.num /= g;
    ret.den /= g;
    return ret;
    }
    ////////////////////

    Real dy = Det(a11, b1,
    a21, b2);  回復  更多評論   
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美精品1区2区| 亚洲激情另类| 伊人成人在线| 狠狠色伊人亚洲综合成人| 韩国av一区二区三区在线观看| 国产日韩av高清| 在线免费不卡视频| 日韩午夜电影在线观看| 亚洲性色视频| 久久国产高清| 欧美91视频| 亚洲毛片av在线| 亚洲欧美日韩人成在线播放| 久久久久成人精品| 亚洲视频免费观看| 亚洲精美视频| 激情久久五月| 欧美女人交a| 国产精品日本欧美一区二区三区| 国产日韩精品在线| 亚洲欧洲在线观看| 午夜欧美视频| 亚洲国产高清一区| 午夜精品久久| 欧美精品久久久久久久| 国产亚洲精品成人av久久ww| 亚洲精品日韩一| 久久精品女人| 一区二区成人精品| 免费观看成人| 韩国视频理论视频久久| 亚洲一区免费观看| 亚洲国产天堂久久国产91| 欧美中文在线观看| 国产精品久久久久久久久久久久| 亚洲第一网站| 久久久久久999| 亚洲一区二区久久| 欧美日韩不卡在线| 亚洲人成免费| 欧美成年人视频网站| 香蕉久久一区二区不卡无毒影院| 欧美午夜电影完整版| 日韩一级免费观看| 亚洲福利国产精品| 久久综合国产精品| 伊人久久婷婷| 噜噜噜久久亚洲精品国产品小说| 亚洲影院在线观看| 国产精品久在线观看| 亚洲午夜激情免费视频| 亚洲三级影院| 欧美日韩福利视频| 一区二区三区免费网站| 亚洲欧洲视频| 欧美日韩国产高清视频| 一道本一区二区| 亚洲精品国产日韩| 欧美日韩亚洲精品内裤| 中文久久精品| 亚洲一二三级电影| 国产精品一区久久久久| 欧美一区在线看| 欧美在线一区二区| 在线观看一区二区视频| 免费国产一区二区| 欧美成人dvd在线视频| 亚洲九九爱视频| 日韩视频免费观看| 国产精品多人| 久久精品国产一区二区电影| 亚洲在线观看视频| 乱中年女人伦av一区二区| 久久丁香综合五月国产三级网站| 国产欧美一区二区精品性色| 久久精品国产视频| 欧美xxx成人| 亚洲女女做受ⅹxx高潮| 性视频1819p久久| 在线日韩日本国产亚洲| 欧美激情第三页| 欧美日韩一区二区视频在线| 亚洲一区在线播放| 久久久免费观看视频| 99国产精品久久久| 亚洲欧美日韩电影| 亚洲国产欧美在线人成| av成人免费| 精品不卡一区| 日韩一本二本av| 国内一区二区三区在线视频| 亚洲欧洲日本一区二区三区| 国产欧美va欧美不卡在线| 欧美激情视频网站| 国产欧美一区二区精品婷婷| 亚洲国产成人久久综合一区| 国产精品主播| 亚洲欧洲日产国产综合网| 国产一区二区久久久| 亚洲精品孕妇| 在线观看日韩av| 亚洲一卡久久| 日韩视频免费在线| 久久精品人人| 亚洲欧美日韩在线| 欧美黄色小视频| 久久综合狠狠综合久久综合88| 欧美激情女人20p| 美腿丝袜亚洲色图| 国产精品网站一区| 一本久久青青| 亚洲乱码一区二区| 久久久综合网站| 久久黄色小说| 国产精品久久一卡二卡| 亚洲精品网站在线播放gif| 国产综合网站| 亚洲欧美视频在线观看| 亚洲欧美日本精品| 欧美午夜影院| 一区二区三区精品视频在线观看| 亚洲片区在线| 蜜桃av一区二区| 免费高清在线一区| 国产亚洲午夜| 性欧美在线看片a免费观看| 亚洲免费视频在线观看| 欧美日韩免费| 日韩午夜av电影| 99国产精品自拍| 欧美精品一区二区三区一线天视频| 麻豆精品一区二区综合av| 国际精品欧美精品| 久久国产黑丝| 免费成人性网站| 91久久精品一区| 欧美肥婆bbw| 国产美女诱惑一区二区| 亚洲图片欧洲图片av| 亚洲开发第一视频在线播放| 欧美成年网站| 亚洲三级电影在线观看| 一区二区福利| 国产精品成人一区二区| 国产精品99久久久久久白浆小说| 亚洲综合色激情五月| 欧美性色aⅴ视频一区日韩精品| av不卡免费看| 欧美一区三区二区在线观看| 国产欧美日韩一区二区三区| 久久国产精品一区二区三区四区| 免费观看成人| 日韩视频亚洲视频| 欧美图区在线视频| 午夜电影亚洲| 欧美成人日本| 一本色道久久综合| 国产精品视频一| 久久久久久成人| 亚洲国产另类精品专区| 亚洲一区欧美激情| 精品成人乱色一区二区| 欧美精品亚洲精品| 亚洲免费影视第一页| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲精品乱码久久久久久黑人 | 亚洲少妇最新在线视频| 香蕉久久夜色| 亚洲二区在线视频| 国产精品igao视频网网址不卡日韩| 亚洲欧美国产高清va在线播| 免费观看成人鲁鲁鲁鲁鲁视频| 在线视频日韩| 精品88久久久久88久久久| 欧美日韩免费观看一区二区三区| 午夜亚洲伦理| 亚洲精品午夜精品| 久久嫩草精品久久久精品一| 99国产精品久久久久久久| 国产亚洲精品一区二区| 欧美精品久久一区二区| 欧美一区二区在线免费观看 | 久久久在线视频| 亚洲视频国产视频| 亚洲国产成人av| 久久久久久九九九九| 国产精品99久久久久久久久| 精品成人在线视频| 国产精品亚洲人在线观看| 欧美成人综合在线| 久久精品水蜜桃av综合天堂| 亚洲视频在线观看一区| 亚洲国产一区在线| 蜜乳av另类精品一区二区| 香蕉久久一区二区不卡无毒影院 | 亚洲神马久久| 亚洲美女av在线播放| 一区在线免费观看| 国产日韩一区| 国产精品一区毛片|