zoukankan      html  css  js  c++  java
  • 车厢调度算法

    /*
    41. 车厢调度 (限1 人完成)
    问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为1,2,3,4。设计一个程序,求出所有可能由此输出的长度为4的车厢序列。
    */

    #include <stdio.h>
    #include<stdlib.h>
    int n = 0;
    //交换两个数
    void swap(int *a, int *b)
    {
    int m;
    m = *a;
    *a = *b;
    *b = m;
    }
    //递归
    void perm(FILE* fw,int list[], int k, int m)
    {
    int i;
    if(k > m)
    {
    for(i = 0; i <= m; i++)
    {
    fprintf(fw,"%d ", list[i]);
    printf("%d ", list[i]);
    }
    printf(" ");
    fprintf(fw," ");
    n++;
    }
    else
    {
    for(i = k; i <= m; i++)
    {
    swap(&list[k], &list[i]);
    perm(fw,list, k + 1, m);
    swap(&list[k], &list[i]);
    }
    }
    }
    int main()
    {
    FILE* fw=fopen("pailie.txt","wt");
    int i;
    int j=0;
    //int list[100];
    printf("请输入N:");
    scanf("%d",&i);
    int list[i];
    for(j;j<i;j++)
    {
    list[j]=j+1; //0-i
    }
    perm(fw,list,0,i-1);
    printf("total:%d ", n);
    fprintf(fw,"total:%d ",n);
    fclose(fw);
    return 0;
    }

    感谢来访,共同学习!
  • 相关阅读:
    luogu_1414 又是毕业季II
    luogu_1372 又是毕业季I
    luogu_1313 计算系数
    luogu_1134 阶乘问题
    luogu_1514 引水入城
    luogu_1120 小木棍
    文件操作
    快速排序
    c oth
    ANSI C与C89、C99、C11区别差异
  • 原文地址:https://www.cnblogs.com/dingxiaowei/p/dingxiaowei.html
Copyright © 2011-2022 走看看