【筆記】APCS 2022 年 6 月場

這是我第一次去考 APCS(誰叫你之前都忘記報),當天考觀念時肚子真的痛得要命,直到中午才去宣洩…我的考場在台北大學三峽校區,令我意外的是男女比沒有到很重,但是大佬倒是挺多的。考實作題時,不知道是不是緊張,就是一直在 debug…最後是寫到第三題寫了一點就結束了。我那天超孤單😢,我朋友給我請假…說他抽考沒讀,我也沒讀啊🤬。反正最後考了 4 / 3 還蠻理想的。

數字遊戲(易)

ZJ 連結:https://zerojudge.tw/ShowProblem?problemid=i399

輸入:3 個 1 ~ 9 的數字

輸出:先輸出數值出現最多的次數,再輸出三個數,且去除重複,由大到小。

想法:既要去掉重複又要排序,我的第一想法就是使用 set。set 是一個容器,它具有資料的唯一性,也就是不可重複,且容器內也會排序,跟 map 一樣。第一筆輸出我會用 4 - set 長度,這樣恰好是重複的個數,再用反向迭代器輸出 set 容器即可。

實作:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <set>
using namespace std;

int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);

int data[3];
cin >> data[0] >> data[1] >> data[2];
set<int> myset(data, data + 3);

cout << 4 - myset.size();
for (auto it = myset.rbegin(); it != myset.rend(); ++it) {
cout << " " << *it;
}
return 0;
}

字串解碼(中)

想法:就…純粹的暴力解吧…,還有注意題目需求,這題要你解密,不是加密(我朋友不小心…)

實作:未更新(懶)