JSOI2008 完美的對稱 數論

2021-09-30 13:43:55 字數 1557 閱讀 3908

在峰會期間,必須使用許多保鏢保衛參加會議的各國代表。代表們除了由他自己的隨身保鏢保護外,組委會還指派了一些其他的**和阻擊手保護他們。為了使他們的工作卓有成效,使被保衛的人的安全盡可能得到保障,保鏢被分配到被保護人的各個方向。

保鏢的最佳站立位置應該是這樣的:被保護人應站在所有保鏢的對稱中心。但是,只要被保

護人一移動,保鏢就很難根據要人的新位置調整位置。大多數的**都很難對此作出實時調整。

因此,安全部長決定將該過程逆轉一下,保鏢先站好自己的位置,然後要人在他們的對稱中心找到合適的位置。如果要人隨便走動,我們就對他的安全不必負責。

你的工作是使這個過程自動操作。給出一組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 星球大戰

題目描述 很久以前,在乙個遙遠的星系,乙個黑暗的帝國靠著它的超級 統治者整個星系。某一天,憑著乙個偶然的機遇,一支反抗軍摧毀了帝國的超級 並攻下了星系中幾乎所有的星球。這些星球通過特殊的以太隧道互相直接或間接地連線。但好景不長,很快帝國又重新造出了他的超級 憑藉這超級 的力量,帝國開始有計畫地摧毀反...