連線遊戲Game of Lines

2021-07-29 23:39:54 字數 2144 閱讀 5747

以後,如果不是a+b問題,我盡量每題都寫,聚沙成塔

time limit: 5 sec  

memory limit: 64 mb

submit: 2080  

solved: 928 [

submit][

status][

discuss]

farmer john最近發明了乙個遊戲,來考驗自命不凡的貝茜。遊戲開始的時 候,fj會給貝茜一塊畫著n (2 <= n <= 200)個不重合的點的木板,其中第i個點 的橫、縱座標分別為x_i和y_i (-1,000 <= x_i <=1,000; -1,000 <= y_i <= 1,000)。 貝茜可以選兩個點畫一條過它們的直線,當且僅當平面上不存在與畫出直線 平行的直線。遊戲結束時貝茜的得分,就是她畫出的直線的總條數。為了在遊戲 中勝出,貝茜找到了你,希望你幫她計算一下最大可能得分。

* 第1行: 輸入1個正整數:n

* 第2..n+1行: 第i+1行用2個用空格隔開的整數x_i、y_i,描述了點i的座標

第1行: 輸出1個整數,表示貝茜的最大得分,即她能畫出的互不平行的直線數 4

-1 1

-2 0

0 01 1

* 第1行: 輸出1個整數,表示貝茜的最大得分,即她能畫出的互不平行的直線數

4 輸出說明: 貝茜能畫出以下4種斜率的直線:-1,0,1/3以及1。

斜率水題,直接上**

var

n,i,j,y,x,ans,tot:longint;

flag,bl:boolean;

k:array[-1..20001]of double;

a,b:array[-1..201]of longint;

procedure qsort(l,r:longint);

var i,j:longint; mid,x:double;

begin

i:=l;

j:=r;

mid:=k[(i+j)shr 1];

repeat

while k[i]mid do dec(j);

if i<=j then

begin

x:=k[i];

k[i]:=k[j];

k[j]:=x;

inc(i);

dec(j);

end;

until i>j;

if il then qsort(l,j);

end;

begin

readln(n);

for i:=1 to n do

begin

readln(a[i],b[i]);

end;

for i:=1 to n do

for j:=i+1 to n do

begin

if a[i]=a[j] then//橫座標相同,即x軸平行,這點要判斷一下,否則除數將為0

begin

flag:=true;

endelse if b[i]=b[j] then//縱座標相同,這個可要可不要

begin

bl:=true;

endelse

begin

inc(tot);

x:=a[i]-a[j];

y:=b[i]-b[j];

k[tot]:=y/x;

end;

end;

qsort(1,tot);//判斷種類問題,一般用到快排

ans:=1;//因為n條斜率,最多有n條不同,最少有1條不同,又只能判斷n-1次,因此將ans的初值定為1

for i:=2 to tot do

begin

if k[i]-k[i-1]<>0 then

begin

//writeln(k[i]:0:2);

inc(ans);

end;

end;

if flag then inc(ans);

if bl then inc(ans);

writeln(ans);

end.

總結:

1、斜率等座標問題,必須考慮除數為0的情況。

2、判斷是否重複(種類問題)可用類似桶排序的方法,但對於此題,會使桶排序的陣列下標為實數,因此選用快排

模考3 笨笨連線遊戲

一天,媽媽在黑板上畫了乙個大大的圓,然後又在圓弧上標上1,2 3,2n 個數。然後讓笨笨任意選取一對數 兩個不同的數 上連一條直線。然後再任意選取一對數,再邊一條直線,但這條直線不能和任何別的直線相交。每個數都要恰好與另乙個數連一條直線。笨笨費了好大的勁才找出一種連線方案。媽媽在旁邊問笨笨 給出n ...

網路遊戲長連線與短連線的差異

1.什麼是長連線,什麼是短連線 2.在什麼情況下,遊戲使用長連線或是短連線 3.在使用短連線時,該採用何種網路資料的收發方式 4.在短連線時是否採用http協議 0.起因 前段時間,看到乙個開源的unity客戶端架構,在處理網路層時,該架構採用的方式如下 var response await ses...

遊戲引擎基礎(七)(網路和連線遊戲環境)

第7部份 網路和連線遊戲環境 網路遊戲 我記得一些年前坐在gdc 遊戲開發者大會 聽負責開發x wing vs tie fighter的傢伙們題為 淹沒在internet 的演講,全是關於讓網路遊戲實時地在internet上工作的東西。他們選擇那個題目是多麼的正確啊。當它開始處理資料報的丟失,亂序,...