DCPC 2015
lancer1268
Problem A:
Random Fightings
有 𝑁 個人在打架,編號從 1 到 𝑁
每回合會隨機挑兩個人出來比賽,輸的人就會被淘汰
你知道編號 𝑖 的人贏編號 𝑗 的人的機率是 𝐴𝑖𝑗 ,而且 𝐴𝑖𝑗 = 1 − 𝐴𝑗𝑖 ,𝐴𝑖𝑖 = 0
請輸出 𝑁 個數字,代表每個人留到最後的機率
範圍:
1 ≤ 𝑁 ≤ 20
Problem A:
Random Fightings
例子:
輸入 答案
𝑁 𝐴
1 0.0 1.000000
2
0.0 0.5
0.5 0.0
0.500000 0.500000
Problem B:
Rectangles
給你 𝑁 個長方形,邊與座標軸平行
你現在想要用一個大長方形覆蓋所有的長方形
請問這個大長方形的面積最小是多少?
範圍:
1 ≤ 𝑁 ≤ 1,000
Problem C:
Too Many Coins
你的口袋裡有 𝐶 個硬幣,第 𝑖 個硬幣的價值是 𝑉𝑖 元
你想要帶至少 M 元,請問你要帶哪些價值的硬幣才好?
請輸出 𝑁 個數字 𝑋1, 𝑋2, ⋯ , 𝑋 𝑁 ,代表你要帶價值為 𝑋1, 𝑋2, ⋯ , 𝑋 𝑁 元的硬幣
注意:如果你選擇帶價值為 𝑌 元的硬幣,那所有價值為 𝑌 元的硬幣你都要帶著
如果有多組解,請輸出 𝑁 最小的解
如果還有多組解,請輸出錢比較多的解
如果還有多組解,請輸出硬幣面額比較高的解
範圍:
1 ≤ 𝐶 ≤ 1,000,000
1 ≤ 𝑀 ≤ 109
1 ≤ 𝑉𝑖 ≤ 1,000,000
Problem C:
Too Many Coins
例子:
輸入
答案
𝐶 𝑀 𝑉
10 7 1 1 1 1 1 2 2 2 5 4 2 5
10 11 1 1 1 1 1 1 1 1 1 1 Impossible
10 6 1 1 1 1 1 1 2 2 2 3 2
Problem D:
Card Game
你有 𝑁 張牌,編號從 1 到 𝑁 ,第 𝑖 張牌上的數字是 𝑃𝑖
你現在要把牌發給 𝐾 個人,並且要滿足三件事
1. 每個人拿到的牌,編號要是連續的
2. 每個人至少要拿到一張牌
3. 每張牌都要被發出去
每個人拿到牌之後就可以算分數,分數的算法是
分數 = 手牌中最大的數字 × 手牌張數
你想要最高分的人分數愈低愈好,請問最高分的人分數最低是多少?
範圍:
1 ≤ 𝑁 ≤ 1,000,000
1 ≤ 𝐾 ≤ 𝑚𝑖𝑛 𝑁, 20,000
1 ≤ 𝑃𝑖 ≤ 1,000,000
Problem D:
Card Game
例子:
𝑁 = 10
𝐾 = 3
𝑃 = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
答案: 25
Problem E:
xortion
給你一個由 𝑁 個正整數組成的序列 𝐴 ,編號從 1 到 𝑁 (即 𝐴1, 𝐴2, ⋯ , 𝐴 𝑁)
現在有 𝑄 筆查詢,每筆查詢,會給你一個數字 𝑋
請輸出使得 𝐴𝑖⨁𝑋 最大的 𝑖 是多少?
如果有多個可能,請輸出最小的那個
範圍:
1 ≤ 𝑁 ≤ 105
1 ≤ 𝑄 ≤ 3 × 105
0 ≤ 𝐴𝑖, 𝑋 ≤ 231
− 1
Problem E:
xortion
例子:
𝑁 = 3
𝐴 = 𝐴1, 𝐴2, 𝐴3 = [ 3, 1, 2 ]
輸入 答案
4 1
5 3
6 2
Problem F:
Print Mix Strings
給你兩個字串 𝑠1, 𝑠2 ,請按照字典序輸出兩個字串 mix 之後可能的字串
mix 表示將兩個字串連接並重新排列,但兩個字串中的順序要與原本相同
範圍:
1 ≤ 𝑠1 , 𝑠2 ≤ 8
例子: 輸入 答案
a aa aaa
ab cd
abcd
acbd
acdb
cabd
cadb
cdab
Problem G:
Count Mix Strings
給你兩個字串 𝑠1, 𝑠2 的長度 𝑠1 , 𝑠2
請問兩個字串 mix 之後可以產生多少字串
如果有某個字串重覆產生,次數也要重覆計算
範圍:
1 ≤ 𝑠1 , 𝑠2 ≤ 10,000
Problem G:
Count Mix Strings
例子:
輸入
答案
𝑠1 𝑠2
1 1 2
1 2 3
2 2 6
Problem H:
tourists
有 𝑁 個人想要搭船,現在有兩種船
第一種:可以載 𝑛1 個人,需要 𝑐1 元
第二種:可以載 𝑛2 個人,需要 𝑐2 元
請問要怎樣才能讓每個人都剛好被載到一次,並且花最少錢?
請輸出花最少錢的一種方案
範圍:
1 ≤ 𝑁 ≤ 2 × 109
1 ≤ 𝑛1, 𝑛2, 𝑐1, 𝑐2 < 2 × 109
Problem H:
tourists
例子:
𝑁 𝑛1 𝑐1 𝑛2 𝑐2 答案
43 3 1 4 2 13 1
40 9 5 12 5 failed
Problem I:
Teleportia
現在平面上有 𝑁 個基地,編號從 1 到 𝑁
編號 𝑖 的基地座標是 𝑥𝑖, 𝑦𝑖 ,並且能力值是 𝑃𝑖
代表他可以花兩秒的時間把人傳送到以 𝑥𝑖, 𝑦𝑖 為圓心, 𝑃𝑖 為半徑(歐氏距離)的圓裡面的任何一個基地
現在有一個人在起點 𝑥 𝑠 , 𝑦𝑠 他想要走到終點 𝑥 𝑡 , 𝑦𝑡
他每秒可以走一單位的距離,並且他只能平行於座標軸行走
請問他最少要花多少時間才能到達終點?
範圍:
0 ≤ 𝑁 ≤ 100
Problem I:
Teleportia
例子:
如圖
從起點到終點最少要 7 秒
Problem J:
palprime
我們說一個數是 palprime ,表示他是一個質數,而且在二進位底下是一個迴文數。
現在給你一個二進位數字 𝑏 ,請輸出大於等於 𝑏 的 palprime 中,最小的那一個。
範圍:
𝑏 最多有 21 個 bits
Problem J:
palprime
例子:
輸入 答案
10 11
100 101
110 111
1000 10001

DCPC 2015 中文題意

  • 1.
  • 2.
    Problem A: Random Fightings 有𝑁 個人在打架,編號從 1 到 𝑁 每回合會隨機挑兩個人出來比賽,輸的人就會被淘汰 你知道編號 𝑖 的人贏編號 𝑗 的人的機率是 𝐴𝑖𝑗 ,而且 𝐴𝑖𝑗 = 1 − 𝐴𝑗𝑖 ,𝐴𝑖𝑖 = 0 請輸出 𝑁 個數字,代表每個人留到最後的機率 範圍: 1 ≤ 𝑁 ≤ 20
  • 3.
    Problem A: Random Fightings 例子: 輸入答案 𝑁 𝐴 1 0.0 1.000000 2 0.0 0.5 0.5 0.0 0.500000 0.500000
  • 4.
    Problem B: Rectangles 給你 𝑁個長方形,邊與座標軸平行 你現在想要用一個大長方形覆蓋所有的長方形 請問這個大長方形的面積最小是多少? 範圍: 1 ≤ 𝑁 ≤ 1,000
  • 5.
    Problem C: Too ManyCoins 你的口袋裡有 𝐶 個硬幣,第 𝑖 個硬幣的價值是 𝑉𝑖 元 你想要帶至少 M 元,請問你要帶哪些價值的硬幣才好? 請輸出 𝑁 個數字 𝑋1, 𝑋2, ⋯ , 𝑋 𝑁 ,代表你要帶價值為 𝑋1, 𝑋2, ⋯ , 𝑋 𝑁 元的硬幣 注意:如果你選擇帶價值為 𝑌 元的硬幣,那所有價值為 𝑌 元的硬幣你都要帶著 如果有多組解,請輸出 𝑁 最小的解 如果還有多組解,請輸出錢比較多的解 如果還有多組解,請輸出硬幣面額比較高的解 範圍: 1 ≤ 𝐶 ≤ 1,000,000 1 ≤ 𝑀 ≤ 109 1 ≤ 𝑉𝑖 ≤ 1,000,000
  • 6.
    Problem C: Too ManyCoins 例子: 輸入 答案 𝐶 𝑀 𝑉 10 7 1 1 1 1 1 2 2 2 5 4 2 5 10 11 1 1 1 1 1 1 1 1 1 1 Impossible 10 6 1 1 1 1 1 1 2 2 2 3 2
  • 7.
    Problem D: Card Game 你有𝑁 張牌,編號從 1 到 𝑁 ,第 𝑖 張牌上的數字是 𝑃𝑖 你現在要把牌發給 𝐾 個人,並且要滿足三件事 1. 每個人拿到的牌,編號要是連續的 2. 每個人至少要拿到一張牌 3. 每張牌都要被發出去 每個人拿到牌之後就可以算分數,分數的算法是 分數 = 手牌中最大的數字 × 手牌張數 你想要最高分的人分數愈低愈好,請問最高分的人分數最低是多少? 範圍: 1 ≤ 𝑁 ≤ 1,000,000 1 ≤ 𝐾 ≤ 𝑚𝑖𝑛 𝑁, 20,000 1 ≤ 𝑃𝑖 ≤ 1,000,000
  • 8.
    Problem D: Card Game 例子: 𝑁= 10 𝐾 = 3 𝑃 = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 答案: 25
  • 9.
    Problem E: xortion 給你一個由 𝑁個正整數組成的序列 𝐴 ,編號從 1 到 𝑁 (即 𝐴1, 𝐴2, ⋯ , 𝐴 𝑁) 現在有 𝑄 筆查詢,每筆查詢,會給你一個數字 𝑋 請輸出使得 𝐴𝑖⨁𝑋 最大的 𝑖 是多少? 如果有多個可能,請輸出最小的那個 範圍: 1 ≤ 𝑁 ≤ 105 1 ≤ 𝑄 ≤ 3 × 105 0 ≤ 𝐴𝑖, 𝑋 ≤ 231 − 1
  • 10.
    Problem E: xortion 例子: 𝑁 =3 𝐴 = 𝐴1, 𝐴2, 𝐴3 = [ 3, 1, 2 ] 輸入 答案 4 1 5 3 6 2
  • 11.
    Problem F: Print MixStrings 給你兩個字串 𝑠1, 𝑠2 ,請按照字典序輸出兩個字串 mix 之後可能的字串 mix 表示將兩個字串連接並重新排列,但兩個字串中的順序要與原本相同 範圍: 1 ≤ 𝑠1 , 𝑠2 ≤ 8 例子: 輸入 答案 a aa aaa ab cd abcd acbd acdb cabd cadb cdab
  • 12.
    Problem G: Count MixStrings 給你兩個字串 𝑠1, 𝑠2 的長度 𝑠1 , 𝑠2 請問兩個字串 mix 之後可以產生多少字串 如果有某個字串重覆產生,次數也要重覆計算 範圍: 1 ≤ 𝑠1 , 𝑠2 ≤ 10,000
  • 13.
    Problem G: Count MixStrings 例子: 輸入 答案 𝑠1 𝑠2 1 1 2 1 2 3 2 2 6
  • 14.
    Problem H: tourists 有 𝑁個人想要搭船,現在有兩種船 第一種:可以載 𝑛1 個人,需要 𝑐1 元 第二種:可以載 𝑛2 個人,需要 𝑐2 元 請問要怎樣才能讓每個人都剛好被載到一次,並且花最少錢? 請輸出花最少錢的一種方案 範圍: 1 ≤ 𝑁 ≤ 2 × 109 1 ≤ 𝑛1, 𝑛2, 𝑐1, 𝑐2 < 2 × 109
  • 15.
    Problem H: tourists 例子: 𝑁 𝑛1𝑐1 𝑛2 𝑐2 答案 43 3 1 4 2 13 1 40 9 5 12 5 failed
  • 16.
    Problem I: Teleportia 現在平面上有 𝑁個基地,編號從 1 到 𝑁 編號 𝑖 的基地座標是 𝑥𝑖, 𝑦𝑖 ,並且能力值是 𝑃𝑖 代表他可以花兩秒的時間把人傳送到以 𝑥𝑖, 𝑦𝑖 為圓心, 𝑃𝑖 為半徑(歐氏距離)的圓裡面的任何一個基地 現在有一個人在起點 𝑥 𝑠 , 𝑦𝑠 他想要走到終點 𝑥 𝑡 , 𝑦𝑡 他每秒可以走一單位的距離,並且他只能平行於座標軸行走 請問他最少要花多少時間才能到達終點? 範圍: 0 ≤ 𝑁 ≤ 100
  • 17.
  • 18.
    Problem J: palprime 我們說一個數是 palprime,表示他是一個質數,而且在二進位底下是一個迴文數。 現在給你一個二進位數字 𝑏 ,請輸出大於等於 𝑏 的 palprime 中,最小的那一個。 範圍: 𝑏 最多有 21 個 bits
  • 19.