2012 03 3普及組 尋找星座

2021-07-14 20:06:53 字數 1193 閱讀 2351

題目描述

現在你在一張衛星中尋找星座,已知該星座在中正好出現一次,而且形狀一樣,方向一樣,大小也一樣。注意中可能有一些與該星座無關的星星。

例如圖1中的星座出現在圖2的衛星中(用圓圈標識部分)。圖1中給定的星座需要在x軸上平移2個單位同時在y軸上平移-3個單位才能與衛星中的衛星正好吻合。

寫乙個程式,計算給定衛星需要在x和y方向上分別平移多少單位才能與衛星吻合。

題解 純暴力,列舉每乙個點的橫縱座標,那個點全部符合就輸出。 **

var

n,m,s:longint;

x,y:array[0..1000] of longint;

a,b:array[0..1000,1..2] of longint;

procedure

init;

var i:longint;

begin

readln(n);

for i:=1

to n do readln(a[i,1],a[i,2]);

readln(m);

for i:=1

to m do

begin

readln(b[i,1],b[i,2]);

x[i]:=b[i,1]-a[1,1];

y[i]:=b[i,2]-a[1,2];

end;

end;

procedure

main;

var i,j,l:longint;

begin

for i:=1

to m do

begin

s:=0;

for j:=1

to n do

for l:=1

to m do

if (b[l,1]=a[j,1]+x[i])and(b[l,2]=a[j,2]+y[i]) then

begin

inc(s);

break;

end;

if s=n then

begin

writeln(x[i],' ',y[i]);

exit;

end;

end;

end;

begin

init;

main;

end.

2012 03 3普及組 坐船旅行

題目描述 noip有n個島嶼,編號為1.n,noip決定在島嶼之間發展船運網路。你在船運票務中心工作,很多人想花盡量少的錢從乙個島到另乙個島進行坐船旅行,他們每個人都報上自己的出發地和目的地,你的任務是告訴他最小花費。但是在這個過程中船的航線不會一直不變,可能會在某個時候增加一些航線,這些新增加的航...

2012 03 3普及組 烤餅乾

noip烤餅乾時兩面都要烤,而且一次可以烤r 1 r 10 行c 1 c 10000 列個餅乾,當一面烤到規定時間時,機器會把整個翻過來以接著烤另一面。有一天,正當機器準備翻餅乾時發生了 有一些餅乾被翻了過來,有一些沒有。幸運的是,過後你可以手工操作,一次可以同時翻若干行或者若干列,但不能單獨翻某乙...

紀中20200606 尋找星座

現在你在一張衛星中尋找星座,已知該星座在中正好出現一次,而且形狀一樣,方向一樣,大小也一樣。注意中可能有一些與該星座無關的星星。例如圖1中的星座出現在圖2的衛星中 用圓圈標識部分 圖1中給定的星座需要在x軸上平移2個單位同時在y軸上平移 3個單位才能與衛星中的衛星正好吻合。寫乙個程式,計算給定星座的...