在峰會期間,必須使用許多保鏢保衛參加會議的各國代表。代表們除了由他自己的隨身保鏢保護外,組委會還指派了一些其他的**和阻擊手保護他們。為了使他們的工作卓有成效,使被保衛的人的安全盡可能得到保障,保鏢被分配到被保護人的各個方向。
保鏢的最佳站立位置應該是這樣的:被保護人應站在所有保鏢的對稱中心。但是,只要被保
護人一移動,保鏢就很難根據要人的新位置調整位置。大多數的**都很難對此作出實時調整。
因此,安全部長決定將該過程逆轉一下,保鏢先站好自己的位置,然後要人在他們的對稱中心找到合適的位置。如果要人隨便走動,我們就對他的安全不必負責。
你的工作是使這個過程自動操作。給出一組n個點(保鏢的位置),你要找出它們的對稱中心s,在這兒被保護人將相對安全。下面以此類推。
首先我們給定一點a以及對稱中心s,點a'是點a以s為對稱中心形成的像點,即點s是線段aa'的對稱中心。
點陣組(x)以s為中心的像點是由每個點的像點組成的點陣組。x是用來產生對稱中心s的,即點陣x以s為中心的像點的集合即為點陣x本身。
輸入格式:
輸入檔案第一行是乙個整數n,1<=n<=20000,接下來的n行每行包含用空格隔開的兩個整數xi和yi,-100000<=xi,yi<=100000,表示這組點陣中第i個點的笛卡爾座標值。
因為任何兩個保鏢都不會站在同乙個位置上,所以在給定的作業中,任何兩點都不相同。但注意保鏢可以站在被保護人相同的位置。
輸出格式:
輸出檔案僅有一行。如果給定的點陣能產生乙個對稱中心,則輸出「v.i.p. should stay at (x,y).」,其中x和y代表中心的笛卡爾座標值,格式為四捨五入保留至小數點後一位。
如果該組點陣無對稱中心,輸出"this is a dangerous situation!",注意輸出時除了兩個單詞之間用乙個空格隔開外,不要輸出多餘空格。
#include
#include
#include
using
namespace
std;
intn,
x,y,
ok=1;
struct
node
}node
[20005];
intmain()
else
for(
inti=1
;i<
n/ 2;i
++)
}//注意整
數儲存時
趨零結尾
,而浮點
數輸出時
會四捨五
入!!!
還有輸出
時%d%f什麼的
只是對數
的解讀方
式,不要
搞錯型別
!!!
if(ok)
printf
("v.i.p. should stay at (%.1lf,%.1lf).",(
double)x/
2,(double)y/
2);
else
printf
("this is a dangerous situation!");
return0;
}
洛谷 P1227 JSOI2008 完美的對稱
在峰會期間,必須使用許多保鏢保衛參加會議的各國代表。代表們除了由他自己的隨身保鏢保護外,組委會還指派了一些其他的 和阻擊手保護他們。為了使他們的工作卓有成效,使被保衛的人的安全盡可能得到保障,保鏢被分配到被保護人的各個方向。保鏢的最佳站立位置應該是這樣的 被保護人應站在所有保鏢的對稱中心。但是,只要...
洛谷 P1227 JSOI2008 完美的對稱
題目描述 在峰會期間,必須使用許多保鏢保衛參加會議的各國代表。代表們除了由他自己的隨身保鏢保護外,組委會還指派了一些其他的 和阻擊手保護他們。為了使他們的工作卓有成效,使被保衛的人的安全盡可能得到保障,保鏢被分配到被保護人的各個方向。保鏢的最佳站立位置應該是這樣的 被保護人應站在所有保鏢的對稱中心。...
jsoi2008 星球大戰
題目描述 很久以前,在乙個遙遠的星系,乙個黑暗的帝國靠著它的超級 統治者整個星系。某一天,憑著乙個偶然的機遇,一支反抗軍摧毀了帝國的超級 並攻下了星系中幾乎所有的星球。這些星球通過特殊的以太隧道互相直接或間接地連線。但好景不長,很快帝國又重新造出了他的超級 憑藉這超級 的力量,帝國開始有計畫地摧毀反...