亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

隨機化數組和約瑟夫環

發布時間:2020-06-27 18:23:25 來源:網絡 閱讀:1152 作者:匯天下豪杰 欄目:編程語言

1、隨機化數組問題

    就是對已有的數組進行亂序排列,使之隨機的,毫無規律;

(1)、代碼實現

#include<stdio.h>
#include<time.h>
#include<stdlib.h>

void showArray(int *a, int count);
void random_1(int *a, int count);
void random_1(int *a, int count){
    int i;
    int tmp;
    int index;

    srand(time(NULL));
    for(i = count; i > 0; i--){
        index = rand()%i;
        tmp = a[index];
        a[index] = a[i-1];
        a[i-1] = tmp;
    }

}
void showArray(int *a, int count){
    int i;

    for(i = 0; i < count; i++){
        printf("%d ", a[i]);
    }
    printf("\n");
}


int main(void){
    int a[] = {4, 6, 8, 2, 0, 7, 1,};
    int count = sizeof(a)/sizeof(int);

    showArray(a, count);
    random_1(a, count);
    showArray(a, count);

    return 0;
}

(2)、結果截圖

隨機化數組和約瑟夫環


2、約瑟夫環問題

    M個元素,第N個元素出圈,從第start開始數即可;

(1)、代碼實現

#include<stdio.h>
#include<malloc.h>

void yusf(char **str, int count, int doom, int start){
    int *person;
    int i;
    int pre = start-2;
    int cur = start-1;
    int alive = count;
    int doomNumber = 0;

    if(start == 1){
        pre = count-1;
    }

    person = (int *)malloc(sizeof(int) * count);
    for(i = 0; i < count; i++){
        person[i] = (i+1)%count;  //循環數組
    }

    for(; alive > 0; cur = person[cur]){
        if(++doomNumber >= doom){
            printf("%s->出圈\n", str[cur]);
            alive--;
            doomNumber = 0;
            person[pre] = person[cur]; //出圈時的pre的保存
        }else{
            pre = cur;
        }
    }
}

int main(void){
    char *str[] = {"李大", "馬二", "張三", "李四", "王五", "劉六", "吊七", "朱八", "楊九"};
    int count = sizeof(str)/sizeof(char *);
    int doom;  //惡運數字
    int start;  //從第幾個人開始

    scanf("%d%d", &doom, &start);
    if(doom > count || doom <= 0 || start > count|| start <= 0){
        return;
    }

    yusf(str, count, doom, start); //count個元素,doom個厄運數字,從第start開始;

    return 0;
}

(2)、結果截圖

隨機化數組和約瑟夫環



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

贡山| 石柱| 河南省| 延寿县| 阿坝| 藁城市| 疏勒县| 吴桥县| 武隆县| 长乐市| 岚皋县| 鄂托克旗| 石城县| 广汉市| 武清区| 肇州县| 霍山县| 卫辉市| 从化市| 民乐县| 密云县| 襄汾县| 瓦房店市| 瑞安市| 新野县| 赣榆县| 上杭县| 天气| 永仁县| 陆丰市| 茂名市| 凌源市| 渭源县| 博爱县| 德令哈市| 凤翔县| 襄城县| 曲阳县| 上饶市| 山丹县| 宁河县|