| # | Problem | Pass Rate (passed user / total user) |
|---|---|---|
| 1000 | The A+B Problem |
|
| 1801 | reverse number |
|
| 1803 | lucky number |
|
| 1805 | Run-Length Encoding |
|
| 1807 | Arrowhead matrix |
|
| 1809 | string matching |
|
| 1811 | zuma--insert |
|
| 1812 | zuma--RLE |
|
| 1813 | zuma--collapse |
|
| 1814 | Prefix |
|
| 1815 | Mask (binary) |
|
| 1816 | Jewels |
|
| 1818 | Dictionary Search |
|
| 1820 | Advanced Dictionary Search |
|
| 1821 | Linked List I |
|
| 1822 | Linked List II |
|
| 1823 | Quicksort I |
|
| 1824 | Quicksort II |
|
| 1825 | Matrix Multiplication |
|
| 1828 | N Queens |
|
| 1830 | Bulls and Cows |
|
| 1832 | Chess Fun |
|
| 1834 | Numbers Tower |
|
Description
輸入一個由 1~9 (不包含 0) 任意組成的 3 位數,例如 579。
Input
一個由 1~9 (不包含 0) 任意組成的 3 位數
Output
對應的幸運數字
Sample Input Download
Sample Output Download
Tags
Discuss
Description
修改下面的程式片段 讓它能夠計算使用者輸入的連續英文字母個數 (類似 Run-Length Encoding, http://en.wikipedia.org/wiki/Run-length_encoding) 輸入的字元只會有小寫英文字母和空格(' ') 或換行 (' ') 輸入的結尾是 '#' 字元 例如: 輸入 aa bbb b c dd a a aa# 輸出 a2b4c1d2a4 或是輸入 cccc cc cc ddd xx xii # 輸出 c8d3x3i2 底下的程式樣本 ch 用來記住剛讀取到字元 prev 用來記住目前為止的連續字元 count 則是記錄連續的次數 只要在 /* your code */ 的地方加入你的程式碼 就能夠完成這項作業 [提示] 1. 如果剛讀取到的字元是 ' ' 或 ' ' 就忽略 2. 如果剛讀取到的字元和目前連續的字元相同,只需要增加 count 3. 如果剛讀取到的字元和目前連續的字元不同,要重設相關的變數 ---------------- /* ps2_1.c Input: aa bbb b c dd a a aa# Output: a2b4c1d2a4 Input: cccc cc cc ddd xx xii # Output: c8d3x3i2 */ #includeint main(void) { int ch; int prev = 0; int count = 0; while ((ch=getchar())!='#') { /* your code */ } /* your code */ return 0; }
Input
參照題目敘述
Output
參照題目敘述
Sample Input Download
Sample Output Download
Tags
Discuss
Description
[ps2_2] 輸入介於 2 到 20 的整數代表矩陣大小 輸出對應大小的 Arrowhead matrix http://en.wikipedia.org/wiki/Arrowhead_matrix 例如 輸入: 5 輸出: * * * * * * * 0 0 0 * 0 * 0 0 * 0 0 * 0 * 0 0 0 * 底下是樣本程式 /* ps2_2.c Arrowhead matrix http://en.wikipedia.org/wiki/Arrowhead_matrix Input: 3 Output: * * * * * 0 * 0 * */ #includeint main(void) { int n; int i, j; scanf("%d", &n); /* your code */ return 0; }
Input
參照題目敘述
Output
參照題目敘述
Sample Input Download
Sample Output Download
Tags
Discuss
Description
[ps2_3] 輸入兩個正整數 a 和 b 而且 a 一定大於 b 找出 b 的數字在 a 中出現的次數 例如 輸入: 781348781346891346 134 輸出: 3 因為 781348781346891346 當中總共出現 3 次 134 [提示] 1.可以先用一個迴圈 算出比 b 高一位的 10 的倍數 並將這個數目存為 r 譬如 b 是 134 則 r 是 1000 2.接下來再用另一個迴圈 用 r 除 a 的餘數與 b 比較看看是否相等 每次比完之後 就將 a 的位數降一位 繼續做下一次迴圈 直到 a 的位數都用完為止 底下是樣本程式 使用 unsigned long long 是為了能夠讀取將近 20 位數的正整數 測試時 我們會假設輸入的正整數最多只有 18 位數 /* ps2_3.c Input: 781348781346891346 134 Output: 3 Input: 71349999134997 99 Output: 4 */ #includeint main(void) { unsigned long long a, b; unsigned long long r; int count = 0; scanf("%llu%llu", &a, &b); /* your code */ printf("%d ", count); return 0; }
Input
參照題目敘述
Output
參照題目敘述
Sample Input Download
Sample Output Download
Tags
Discuss
Description
輸入將會有多筆資料以及多個指令。一筆資料存在一個 node 中,新的資料插在 list 的最前端。指令只有 RA 一種,它代表 reversal duplication + appending。產生一個目前 list 的反序複製本,並將它接在目前 list 的後面形成一個更長的 list。輸出讀完資料後的 list,以及做完所有指令後的 list。
Input
資料筆數 n 接下來 n 行,一行一筆資料,可能是浮點數或是字串,字串最多 20 個字元 指令數 m 接下來 m 行,一行一個指令
Output
讀完資料後的 list,資料以空白隔開 做完所有指令的 list,資料以空白隔開
Sample Input Download
Sample Output Download
Tags
Discuss
Description
輸入將會有多筆產品資料,包括產品名稱、價格、賣家評價。以及多個搜尋產品名稱的字串,搜尋字串可能只包含產品名稱的開頭。先印出查詢的字串,接著找出所有名稱開頭相符的產品(忽略大小寫),並印出產品的詳細資料。順序由低價到高價,若價格相同,則依照賣家評價,由高到低排序。每一筆查詢都至少會有一個結果。
Input
產品資料筆數 n 接下來 3n 行關於產品的描述,每一個產品描述有 3 行: 產品名稱(字串) 產品價格(整數) 賣家評價(浮點數) 查詢數 m 接下來 m 行,每一行一個查詢字串
Output
m 個查詢結果,每一個包含: 查詢字串 查詢到的產品,一行一個產品
Sample Input Download
Sample Output Download
Tags
Discuss
Description
承 1823 題。查詢方式改為查詢某個價位間的產品。印出價格的區間,接著找出價格落在這區間的產品,並印出產品詳細資料。依照產品名稱排序(考慮大小寫),名稱相同,則依照價格由低到高排序,價格相同,則由高評價排到低評價。
Input
產品資料筆數 n 接下來 3n 行關於產品的描述,每一個產品描述有 3 行: 產品名稱(字串) 產品價格(整數) 賣家評價(浮點數) 查詢數 m 接下來 m 行,每一行 2 個整數,代表最低價位、最高價位
Output
m 個查詢結果,每一個包含: 最低價位<=price<=最高價位 查詢到的產品,一行一個產品
Sample Input Download
Sample Output Download
Tags
Discuss
Description
請寫一個程式可以做出兩個矩陣相乘。
其中 Input 矩陣的元素都是整數,而矩陣大小不會超過 50x50 (最小為 1x1)
Input
三個數字,用空白隔開(第一個數字是第一個矩陣的列數(rows);第二個數字是第一個矩陣的行數(columns)(也是第二個矩陣的列數);第三個數字是第二個矩陣的行數) 第一個矩陣(數字間都用一個空白隔開) 第二個矩陣(數字間都用一個空白隔開)
Output
計算後的結果,矩陣中每列(row)中的每個數字請用一個空白隔開,且每列最後沒有多餘空白字元(輸出結果最後有換行)
Sample Input Download
Sample Output Download
Tags
Discuss
Description
輸入一個三位正整數以及 ?A?B 的資訊,然後輸出所有可能的答案。
三位數的開頭不會是 0 而且數字不會重覆。
Sample Input 第一個數字 123 是猜測的數字,接下來兩個數字 1 和 2 分別表示 1A 和 2B,也就是 123 和正確答案相比,有一個數字的位置完全相同,但是有兩個數字的位置錯誤。你的程式要能夠由小到大輸出符合 1A2B 條件的所有可能的正確答案,也就是 Sample Output 的結果。
Input
猜的數字 兩個數字(分別是 ?A 和 ?B)
Output
所有可能的正確答案(從小排到大) 最後有換行
Sample Input Download
Sample Output Download
Tags
Discuss
Description
有一座數字塔,裡面包含許多整數,呈三角形,如下面的範例:
1
4 6
6 9 3
6 3 7 1
2 6 3 1 8
第一層 1 個數字,第二層 2 個數字,以此類推。從最上層走到最底層,每一步都一定要往下走,而且只有鄰近的左右兩條路可以選,例如第二層的 4 只能走到第三層的 6 或 9。將經過的數字加總,代表該路徑的值。請找出所有路徑中最大的值,並將該值輸出。
Input
不大於 10 的正整數 n,代表塔的高度 接下來 n 行,一行代表一層的數字,數字以空白隔開
Output
可能路徑的最大值,記得換行

