2019-06-06 YTUOJ 基礎程序/數(shù)組

--------------------------------
Author : ShawnDong
updateDate :2019.6.7
Blog : ShawnDong98.github.io
--------------------------------

3167: 神奇的辣條:豆豆與牛牛計控學院在學神,每次考試他倆都是前兩名。然而兩人都想正當?shù)谝幻?。聰明的豆豆發(fā)現(xiàn)了成為第一名,是和兩人考試前幾天吃辣條的數(shù)量有關。
牛牛和豆豆每天帶一包辣條到學校,一包辣條有10根。他倆每天主要是上午吃辣條,吃的辣條越多,學習精力越足。兩人都有一個癖好,如果上午吃奇數(shù)根辣條,則下午要補一根。最后誰考試前幾天吃的辣條多,誰成為第一名。
現(xiàn)在給你一組牛牛與豆豆吃辣條的記錄,你能預測誰是第一嗎?

輸入有3行。
第1行是豆豆與牛??荚嚽俺岳睏l的天數(shù)n。
第2行有n個數(shù),是豆豆每天上午吃的辣條的數(shù)量。
第3行有n個數(shù),是牛牛每天上午吃的辣條數(shù)量。

輸出一行,如果豆豆第一,輸出“doudou“;如果牛牛第一,輸出“niuniu”,如果兩人并列第一,輸出“parallel”。

int main(){
    int n = 0;
    int sum_D = 0, sum_N = 0;
    cin >> n;
    int LT_DD[n], LT_NN[n];
//    cin.getline(LT_DD, n);
    for(int i=0; i<n; i++){
        cin >> LT_DD[i];
    }
    for(int i=0; i<n; i++){
        cin >> LT_NN[i];
    }
//    for(int i=0; i<n; i++){
//        cout << LT_DD[i];
//    }
    for(int i=0; i<n; i++){
        if(LT_DD[i] % 2 == 0){
            sum_D += LT_DD[i];
        }
        else{
            sum_D += LT_DD[i] + 1;
        }
    }
//    cout << "sum_D: " << sum_D;
    for(int i=0; i<n; i++){
        if(LT_NN[i] % 2 == 0){
            sum_N +=LT_NN[i];
        }
        else{
            sum_N += LT_NN[i] + 1;
        }
    }
    if(sum_D > sum_N){
        cout << "doudou";
    }
    else if(sum_D == sum_N){
        cout << "parallel";
    }
    else{
        cout << "niuniu";
    }
}

3224: 輸入10個數(shù)字,然后逆序輸出—C語言版:輸入10個數(shù)字,然后逆序輸出。

#define N 10

int main()

{

    void revert(int *,int);

    int a[N],i;

    for(i=0; i<N; i++)

        scanf("%d",&a[i]);

    revert(a,N);

    return 0;

}

void revert(int *a, int n){
    for(int i=n-1; i>=0; i--){
        cout << *(a+i) << " ";
    }
}

3341: 夢幻九宮格:今天,小崔讓我很生氣,我不想理他了。他想讓我原諒他,我就把他帶到一個夢幻九宮格,讓他把里面所有的拼圖碎片(三個)找出來,并正確求出三個碎片上三個數(shù)的和。我給他提示,三個碎片藏在對角線上。如果他能完成任務,我就原諒他,你能幫幫他嗎?九宮格如下圖粗體字所示

int main(){
    int a[3][3];
    int sum = 0;
    for(int i=0; i<3; i++){
        for(int j=0; j<3; j++){
            cin >> a[i][j];
            if(i == j){
                sum += a[i][j];
            }
        }
    }
    cout << sum;
}

3369: 小胖學長學排序:輸入十個正整數(shù), 從小到大的順序進行順序輸出

//
// Created by Shawn on 2019/6/7.
//

#include "iostream"

using namespace std;

int main(){
    int a[10];
    for(int i=0; i<10; i++) {
        cin >> a[i];
    }
    for(int i=0; i<9; i++){
        for(int j=i; j<10; j++){
            int temp;
            if(a[i]>a[j]){
                temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }
        }
    }
    for(int i=0; i<10; i++) {
        cout << a[i] << " ";
    }
    return 0;
}

3376: 數(shù)組奇偶操作:給你一個有n個整數(shù)的序列,a1,a2,a3,....an(下標從1開始)。
現(xiàn)在進行下列操作,將下標為奇數(shù)的元素按照升序排列,下標為偶數(shù)的元素按照降序排列,然后輸出。
比如,給你n=8,序列為 2 6 7 1 3 8 9 4。
則下標為奇數(shù)的元素有2 7 3 9,排序后為2 3 7 9。
下標為偶數(shù)的元素有6 1 8 4,排序后為8 6 4 1。
則輸出為 2 8 3 6 7 4 9 1

輸入
輸入數(shù)據(jù)包含多組。每一組測試數(shù)據(jù)的第一行為一個整數(shù)n(n<1000),表示序列的個數(shù),第二行有以空格隔開的n個整數(shù)a1,a2,a3,...an。輸入數(shù)據(jù)以n=0結束
輸出
按要求輸出,每一個序列占一行,每兩個元素之間用空格隔開(每一行最后不應包含空格)。

//
// Created by Shawn on 2019/6/7.
//
#include "iostream"

using namespace std;

int main(){
    int n;
    while(cin >> n && n!=0){
        int a[n];
        for(int i=0; i<n; i++){
            cin >> a[i];
        }
        for(int i=0; i<n-2; i+=2){
            for(int j=i+2; j<n; j+=2){
                if(a[i] > a[j]) {
//                cout << "Im in jiangxu... " << i << ":" << j << endl;
                    int temp;
                    temp = a[i];
                    a[i] = a[j];
                    a[j] = temp;
                }
            }
        }
        for(int i=1; i<n-2; i+=2){
            for(int j=i+2; j<n; j+=2){
                if(a[i] < a[j]) {
//                cout << "Im in shengxu..." << a[i] << ":" << a[j] << endl;
                    int temp;
                    temp = a[i];
                    a[i] = a[j];
                    a[j] = temp;
                }
            }
        }

        for(int i=0; i<n; i++) {
            cout << a[i] << " ";
        }
    }

    return 0;
}

3385: 小胖學長山洞探險:輸入一個n*m的二維數(shù)組,尋找數(shù)組中最大的值
第一行 n m (1<=n,m<=10)
后面n行,每行m個數(shù)據(jù)。構成二維數(shù)組 。
輸出最大值

int main(){
    int m, n;
    int max;
    cin >> m;
    cin >> n;
    int a[m][n];
    for(int i=0; i<m; i++){
        for(int j=0; j<n; j++){
            cin >> a[i][j];
        }
    }
    max = a[0][0];
    for(int i=0; i<m; i++){
        for(int j=0; j<n; j++){
            if(a[i][j] > max){
                max = a[i][j];
            }
        }
    }
    cout << max;
    return 0;
}
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容