HDU4367 線段相交與斐波那契數列

2021-06-16 21:08:13 字數 1469 閱讀 5671

題目:the war of virtual world

題意:在平面內給n個點的座標,n小於等於200,在這n個點中先選兩個點a,b,有(n-1)*n/2種,對於每一種情況,分別求出ki,ki等於選定的a,b直線

與剩下的點的交點數,求表示式:

的值。

#include #include #include #include using namespace std;

typedef long long ll;

const int n=210;

const int m=41000;

const int mod=1000000007;

const double eps=1e-8;

const double pi=acos(-1.0);

const double pi2=pi*2;

struct point

}point[n],temp[n];

int n;

bool visit[m];

ll fib[m];

ll fk[m];

int num[n][n];

int left[n][n];

int right[n][n];

inline point operator-(const point &a, const point &b)

inline double operator*(const point &a, const point &b)

inline bool operator==(const point &a, const point &b)

inline int cross(const point &a, const point &b, const point &o)

inline int cross(const int &a, const int &b, const int &o)

inline double positiveatan(const point &a, const point &o)

bool operator

int get********number(int a, int b, int c)

ll quick_mod(ll a,ll b)

b>>=1;

a=a*a%mod;

}return ans;

}ll solve(int x)

int main()

{ while(~scanf("%d",&n))

{for(int i=0;i

hdu 2516 斐波那契博弈)

思路 網上大牛說是著名的斐波那契博弈模型 首先 2個石頭肯定是必敗點,3個石頭也是必敗點,然後開始看後面,4個石頭時,可以去乙個使對手到必敗點,而對手在這種情況下在必敗點是不能贏得,所以4是必勝點。但是後面5個石頭的情況就不同了,因為5個石頭 你肯定不會sb的走到4這個必勝點讓對手贏,但是你發現走到...

HDU 2046 斐波那契數列

我們可以看到,假設當前為2 n 則這n可以有n 1加乙個豎的和n 2時加兩個橫的,並且這兩個是不可能重複的,因為多出來一行,1 2的矩形根本放不進去,也不可能再有其他的放置方法,這也是由最小單位是1 2的矩形這一條件決定 include include using namespace std int...

hdu 2516 斐波那契數列

problem description 1堆石子有n個,兩人輪流取.先取者第1次可以取任意多個,但不能全部取完.以後每次取的石子數不能超過上次取子數的2倍。取完者勝.先取者負輸出 second win 先取者勝輸出 first win input 輸入有多組.每組第1行是2 n 2 31.n 0退出...