藍橋杯 BASIC題 (持續更新)

2021-07-24 19:51:22 字數 1316 閱讀 5551

basic-13 基礎練習 數列排序  

問題描述

給定乙個長度為n的數列,將這個數列按從小到大的順序排列。1<=n<=200

輸入格式

第一行為乙個整數n。

第二行包含n個整數,為待排序的數,每個整數的絕對值小於10000。

輸出格式

輸出一行,按從小到大的順序輸出排序後的數列。

樣例輸入5

8 3 6 4 9

樣例輸出

3 4 6 8 9

#include

using namespace std;

int main()

{ int a[1000];

int n=0;

int i=0;

int temp=0;

cin>>n;

for(i=0;i

tip:普通的排序,冒泡。。冒泡本身就是個較低效率的排序方式,難以改進,如果想要更快需要考慮使用其他排序演算法

basic-13 基礎練習 特殊回文數

問題描述

123321是乙個非常特殊的數,它從左邊讀和從右邊讀是一樣的。

輸入乙個正整數n, 程式設計求所有這樣的五位和六位十進位制數,滿足各位數字之和等於n 。

輸入格式

輸入一行,包含乙個正整數n。

輸出格式

按從小到大的順序輸出滿足條件的整數,每個整數佔一行。

樣例輸入 52

樣例輸出

899998

989989

998899

資料規模和約定

1<=n<=54。

tip:定義6個變數分別儲存6位上的數字,窮舉法迴圈遍歷。需要注意的一點是需要先遍歷10000--99999的五位數的情況再遍歷六位數的情況。

#includeusing namespace std;

int main()

{ int n;

int a,b,c,d,e,f;

long i;

cin>>n;

for(i=10000;i<=99999;i++)

{ b=i/10000%10;

c=i/1000%10;

d=i/100%10;

e=i/10%10;

f=i%10;

if((b==f&&c==e)&&b+c+d+e+f==n)

cout<

藍橋杯真題(更新中。。。)

樣例輸入 3 30 3 1 20 2 樣例輸出 3 1 2 樣例說明 原數列為 1,2,3 第 1 步後為 3,2,1 第 2 步後為 3,1,2 第 3 步後為 3,1,2 與第 2 步操作後相同,因為前兩個數已經是降序了。評測用例規模與約定 對於 30 的評測用例,n,m 1000 對於 60 ...

刷題 藍橋杯 BASIC 18 矩形面積交

平面上有兩個矩形,它們的邊平行於直角座標系的x軸或y軸。對於每個矩形,我們給出它的一對相對頂點的座標,請你程式設計算出兩個矩形的交的面積。輸入僅包含兩行,每行描述乙個矩形。在每行中,給出矩形的一對相對頂點的座標,每個點的座標都用兩個絕對值不超過10 7的實數表示。輸出僅包含乙個實數,為交的面積,保留...

刷題 藍橋杯 BASIC 19 完美的代價

回文串,是一種特殊的字串,它從左往右讀和從右往左讀是一樣的。小龍龍認為回文串才是完美的。現在給你乙個串,它不一定是回文的,請你計算最少的交換次數使得該串變成乙個完美的回文串。交換的定義是 交換兩個相鄰的字元 例如mamad 第一次交換 ad mamda 第二次交換 md madma 第三次交換 ma...