2023年NOIP普及組複賽題解

2022-05-24 08:36:09 字數 1251 閱讀 4332

題目涉及演算法:

這道題目是一道基礎的模擬題,只需要模擬將數字進行翻轉就可以了,注意 \(0\) 和 負數。

實現**如下:

#include using namespace std;

void solve(int num)

if (num == 0)

int t = 0;

while (num > 0)

cout << t << endl;

}int n;

int main()

這道題目就是一道簡單的字串匹配問題。

關於字串匹配問題有一些經典的演算法(比如kmp等),但是我們這道題目資料量比駕小所以直接暴力比較就可以了。

需要注意的是字串的讀入(char陣列使用getsstring使用cin.getline

實現**如下:

#include using namespace std;

char s[12], t[1000010];

int n, m, cnt, idx;

int main()

if (flag) }}

if (cnt) printf("%d %d\n", cnt, idx);

else puts("-1");

return 0;

}

這道題目就是按照題目描述來模擬一下就可以了。

首先我們先設計我們的比較函式:分數從高到低排,分數相同時按編號從小到大排。

然後呢,迴圈r輪。

在最開始需要使用比較函式對這 2n 個人進行一下排序。

然後接下來(r輪裡面的)每一輪,我都比較相鄰的兩個元素,然後實力高一點的那個加一分;然後再按照比較函式拍一下序。

實現**如下(開了o2優化):

#include using namespace std;

const int maxn = 200200;

int n, r, q;

struct node a[maxn];

bool cmp(node a, node b)

int main()

sort(a, a+n, cmp);

}printf("%d\n", a[q-1].id);

return 0;

}

NOIP普及組複賽題集

題目描述 牛倌被通知,他的乙隻牛逃逸了!所以他決定,馬上出發,盡快把那只牛抓回來 他們都站在數軸上 牛倌在n 0 n 100000 處,牛在k 0 k 100000 處 約翰有兩種辦法移動,步行和瞬移 步行每秒種可以讓約翰從x處走到x l或x l處 而瞬移則可讓他在1秒內從x處消失,在2x處出現 然...

2023年NOIP普及組複賽題解

題目涉及演算法 入門題,直接開乙個迴圈遍歷一下就可以了。實現 如下 include using namespace std int n,ans 0 int main cout ans endl return 0 基礎題,直接遍歷一下地圖 對於每個格仔,統計一下周圍8個格仔 就可以實現地雷的統計。實現...

2023年NOIP普及組複賽題解

題目涉及演算法 這道題目就是一道簡單的結構體排序。實現 如下 include using namespace std const int maxn 330 struct student a maxn int n bool cmp student a,student b int main sort a...