2014程式設計之美初賽第一場

2021-06-21 14:47:58 字數 3261 閱讀 2801

時間限制:

2000ms

單點時限:

1000ms

記憶體限制:

256mb

一般來說,我們採用針孔相機模型,也就是認為它用到的是小孔成像原理。

在相機座標系下,一般來說,我們用到的單位長度,不是「公尺」這樣的國際單位,而是相鄰畫素的長度。而焦距在相機座標系中的大小,是在影象處理領域的乙個非常重要的物理量。

假設我們已經根據相機引數,得到鏡頭的物理焦距大小(focal length),和相機膠片的寬度(ccd width),以及**的橫向解析度(image width),則具體計算公式為:

focal length in pixels = (image width in pixels) * (focal length on earth) / (ccd width on earth)

比如說對於canon powershot s100, 帶入公式得

focal length in pixels = 1600 pixels * 5.4mm / 5.27mm = 1639.49 pixels

現在,請您寫一段通用的程式,來求解焦距在相機座標系中的大小。

多組測試資料。首先是乙個正整數t,表示測試資料的組數。

每組測試資料佔一行,分別為

鏡頭的物理焦距大小(focal length on earth)

相機膠片的寬度(ccd width on earth)

**的橫向解析度大小(image width in pixels),單位為px。

之間用乙個空格分隔。

每組資料輸出一行,格式為「case x: ypx」。 x為測試資料的編號,從1開始;y為焦距在相機座標系中的大小(focallength in pixels),保留小數點後2位有效數字,四捨五入取整。

對於小資料:focal length on earth和ccd width on earth單位都是公釐(mm)

對於大資料:長度單位還可能為公尺(m), 分公尺(dm), 厘公尺(cm), 公釐(mm), 微公尺(um),奈米(nm)

樣例輸入

2

5.4mm 5.27mm 1600px

5400um 0.00527m 1600px

樣例輸出

case 1: 1639.47px

case 2: 1639.47px

時間限制:

4000ms

單點時限:

2000ms

記憶體限制:

256mb

有乙個n個節點的樹,其中點1是根。初始點權值都是0。

乙個節點的深度定義為其父節點的深度+1,。特別的,根節點的深度定義為1。

現在需要支援一系列以下操作:給節點u的子樹中,深度在l和r之間的節點的權值(這裡的深度依然從整個樹的根節點開始計算),都加上乙個數delta。

問完成所有操作後,各節點的權值是多少。

為了減少巨大輸出帶來的開銷,假設完成所有操作後,各節點的權值是answer[1..n],請你按照如下方式計算出乙個hash值(請選擇合適的資料型別,注意避免溢位的情況)。最終只需要輸出這個hash值即可。

mod =1000000007; // 10^9 + 7

magic= 12347;

hash =0;

for i= 1 to n do

hash = (hash * magic + answer[i]) mod mod;

endfor

第一行乙個整數t (1 ≤ t ≤ 5),表示資料組數。

接下來是t組輸入資料,測試資料之間沒有空行。

每組資料格式如下:

第一行乙個整數n (1 ≤ n ≤ 105),表示樹的節點總數。

接下來n - 1行,每行1個數,a (1 ≤ a ≤ n),依次表示2..n節點的父親節點的編號。

接下來乙個整數q(1 ≤ q ≤ 105),表示操作總數。

接下來q行,每行4個整數,u, l, r, delta (1 ≤ u ≤ n, 1 ≤ l ≤ r ≤ n, -109 ≤ delta ≤ 109),代表一次操作。

對每組資料,先輸出一行「case x: 」,x表示是第幾組資料,然後接這組資料答案的hash值。

小資料:1 ≤ n, q ≤ 1000

大資料:1 ≤ n, q ≤ 105

點1的子樹中有1,2,3三個節點。其中深度在2-3之間的是點2和點3。

點2的子樹中有2,3兩個節點。其中沒有深度為1的節點。

所以,執行完所有操作之後,只有2,3兩點的權值增加了1。即答案是0 1 1。再計算對應的hash值即可。

樣例輸入

131

221 2 3 1

2 1 1 1

樣例輸出

case 1: 12348

時間限制:

12000ms

單點時限:

6000ms

記憶體限制:

256mb

a市是乙個高度規劃的城市,但是科技高階發達的地方,居民們也不能忘記運動和鍛鍊,因此城市規劃局在設計a市的時候也要考慮為居民們建造乙個活動中心,方便居住在a市的居民們能隨時開展運動,鍛鍊強健的身心。

城市規劃局希望活動中心的位置滿足以下條件:

1. 到所有居住地的總距離最小。

2. 為了方便活動中心的資源補給和其他器材的維護,活動中心必須建設在a市的主幹道上。

為了簡化問題,我們將a市擺在二維平面上,城市的主幹道看作直角座標系平的x軸,城市中所有的居住地都可以看成二維平面上的乙個點。

現在,a市的城市規劃局希望知道活動中心建在哪兒最好。

第一行包括乙個數t,表示資料的組數。

接下來包含t組資料,每組資料的第一行包括乙個整數n,表示a市共有n處居住地

接下來n行表示每處居住地的座標。

對於每組資料,輸出一行「case x: y」,其中x表示每組資料的編號(從1開始),y表示活動中心的最優建造位置。我們建議你的輸出保留y到小數點後6位或以上,任何與標準答案的絕對誤差或者相對誤差在10-6以內的結果都將被視為正確。

小資料:1 ≤ t ≤ 1000, 1 ≤ n ≤ 10

大資料:1 ≤ t ≤ 10, 1 ≤ n ≤ 105

對於所有資料,座標值都是整數且絕對值都不超過106

樣例1:活動中心的最優建造位置為(1.678787, 0)

樣例輸入

1

31 1

2 23 3

樣例輸出

case 1: 1.678787

程式設計之美初賽第一場

時間限制 12000ms 單點時限 6000ms 記憶體限制 256mb a市是乙個高度規劃的城市。可是科技高階發達的地方,居民們也不能忘記運動和鍛鍊,因此城市規劃局在設計a市的時候也要考慮為居民們建造乙個活動中心。方便居住在a市的居民們能隨時開展運動。鍛鍊強健的身心。城市規劃局希望活動中心的位置滿...

2014程式設計之美初賽第一場 1002 樹

時間限制 4000ms 單點時限 2000ms 記憶體限制 256mb 有乙個n個節點的樹,其中點1是根。初始點權值都是0。乙個節點的深度定義為其父節點的深度 1,特別的,根節點的深度定義為1。現在需要支援一系列以下操作 給節點u的子樹中,深度在l和r之間的節點的權值 這裡的深度依然從整個樹的根節點...

程式設計之美初賽(第一場) 焦距

時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb 一般來說,我們採用針孔相機模型,也就是認為它用到的是小孔成像原理。在相機座標系下,一般來說,我們用到的單位長度,不是 公尺 這樣的國際單位,而是相鄰畫素的長度。而焦距在相機座標系中的大小,是在影象處理領域的乙個非常重要的物理量。...