Yuki's Blog

2025 6月 程式設計期末考 題庫解題紀錄

11th June 2025
Writeup
Last updated:30th December 2025
4 Minutes
705 Words

雲科資工 113 下學期 程式設計 期末考

老師: 林義隆 教授

=

大概是把沒寫過的題目寫過一次,解題思路大多用”建表查表”。

太簡單的我不會另外寫思路。

1
考試範圍:
2
CPE-0101A:連續輸入-先量後物-兩數之和
3
4
CPE-0101B:連續輸入-先量後物-奇偶判斷
5
CPE-0102A:連續輸入-量量後物-多數之和
6
CPE-0102B:連續輸入-量量後物-奇偶判斷
7
CPE-0103A:連續輸入-檔尾結束-兩數之和
8
CPE-0103B:連續輸入-檔尾結束-奇偶判斷
9
CPE-0104A:連續輸入-單零結尾-單數奇偶
10
CPE-0104B:連續輸入-飄零結尾-兩點之和
11
CPE-0105A:連續輸入-井然有序-拼字檢查
12
CPE-0105B:連續輸入-文零結尾-大數九九
13
CPE-0106A:連續輸入-檔行結尾-多數之和
14
CPE-0106B:連續輸入-檔行結尾-多項式和
15
CPE-0107A:連續輸入-偷看放回-科學二則
21 collapsed lines
16
CPE-0107B:連續輸入-偷看放回-聚合計算
17
CPE-0108A:連續輸入-遺落換行-整數排序
18
CPE-0108B:連續輸入-遺落換行-月日換算
19
20
CPE-0201A:串碼四入-字碼略白-整數三則
21
CPE-0201B:串碼四入-字串略白-串頻統計
22
CPE-0202A:串碼四入-字碼通吃-大小互換
23
CPE-0202B:串碼四入-字碼通吃-去除標籤
24
CPE-0203A:串碼四入-字串整行-行串統計
25
CPE-0203B:串碼四入-字串整行-逗串統計
26
CPE-0204A:串碼四入-混合運用-整數二則
27
CPE-0204B:串碼四入-混合運用-單位四則
28
29
CPE-0301A:井然有序-重複排序-內建排序
30
CPE-0301B:井然有序-重複排序-袋內排序
31
32
01.UVA10041 - Vito's Family
33
03.UVA10035 - Primary Arithmetic
34
04.UVA100 - The 3n+1 problem
35
06.UVA10101 - Bangla Numbers
36
10.UVA11332 - Summing Digits

CPE-0105A

1
#include "bits/stdc++.h"
2
3
using namespace std;
4
5
int main (){
6
vector<string>L;
7
string tmp;
8
bool j = true;
9
while (cin >> tmp){
10
if (tmp != "#"){
11
if (j){
12
L.push_back(tmp);
13
}
14
else{
15
j = false;
16 collapsed lines
16
for (int i = 0 ; i < L.size(); i++){
17
if (tmp == L[i]){
18
cout << "YES" << endl;
19
break;
20
}
21
else if (i == L.size()-1){
22
cout << "NO" << endl;
23
}
24
}
25
}
26
}
27
else {
28
j = false;
29
}
30
}
31
}

CPE-0108A

1
#include "bits/stdc++.h"
2
3
using namespace std;
4
5
int main(){
6
int c;
7
while (cin >> c){
8
cin.ignore();
9
for (int i = 0 ; i < c ; i++){
10
string inp, tmp;
11
getline(cin, inp);
12
vector<int> L;
13
for (int j = 0 ; j < inp.size();j++){
14
if (inp[j] != ' '){
15
tmp += inp[j];
21 collapsed lines
16
if (j == inp.size()-1){
17
L.push_back(stoi(tmp));
18
}
19
}
20
else {
21
L.push_back(stoi(tmp));
22
tmp = "";
23
}
24
}
25
sort(L.begin(), L.end());
26
27
for (int j = 0 ;j < L.size();j++){
28
cout << L[j];
29
if (j != L.size()-1){
30
cout << " ";
31
}
32
}
33
cout << endl;
34
}
35
}
36
}

CPE-0108B

idea: 判斷輸入的第一個東西是不是數字,不是->轉換成數字,是->不影響直接輸出。

1
#include "bits/stdc++.h"
2
using namespace std;
3
string L[12] = {"Jan","Feb","Mar","Apr","May","Jun"
4
,"Jul","Aug","Sep","Oct","Nov","Dec"};
5
6
int main()
7
{
8
int c;
9
string inp;
10
while (cin >> c){
11
for (int i = 0 ; i < c ; i++){
12
string m,d;
13
cin >> m;
14
cin >> d;
15
if (!isdigit(m[0])){
14 collapsed lines
16
for (int j = 0; j < 12 ; j++){
17
if (L[j] == m){
18
cout << j+1 << " " << d << endl;
19
}
20
}
21
}
22
else{
23
cout << stoi(m) << " " << d << endl;
24
}
25
}
26
}
27
}
28
29
### UVA10041
Article title:2025 6月 程式設計期末考 題庫解題紀錄
Article author:Yuki
Release time:11th June 2025