日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

nyoj19 全排列

發(fā)布時(shí)間:2023/11/27 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 nyoj19 全排列 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

http://acm.nyist.net/JudgeOnline/status.php?pid=19

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 int n,a[10];
 4 bool vis[10];//標(biāo)示數(shù)字是否被用過(guò) 
 5 void f(int k,int m)//k用來(lái)給a中第k個(gè)元素賦值,m表示還需要尋找的數(shù)字個(gè)數(shù) 
 6 {
 7     for(int i=1;i<=n;++i)
 8     {
 9         if(!vis[i])  
10             a[k]=i;
11         else 
12             continue;//用過(guò)的 話找下個(gè)數(shù)字 
13         vis[i]=1;//標(biāo)志為1,下層遞歸不再使用 
14         if(m>1)//m>1繼續(xù)尋找
15             f(k+1,m-1);
16         else
17         {
18             for(int j=1;j<=a[0];++j)//否則尋找完畢,輸出 
19                 printf("%d",a[j]);
20             printf("\n");
21         }
22         vis[i]=0;//這點(diǎn)很重要,因?yàn)楹竺娴难h(huán)還需要再用,否則就只輸出一個(gè)遞增的序列就完了,為此我貢獻(xiàn)了好幾個(gè)TE,納悶的是為什么不是WA呢? 
23     }        //剛開(kāi)始在這加了一個(gè)memset(),結(jié)果一直不對(duì),因?yàn)檫@樣后面會(huì)出現(xiàn)重復(fù)的數(shù)字,所以不行 
24 }
25 int main()
26 {
27     int N;
28     scanf("%d",&N);
29     while(N--)
30     {
31         scanf("%d%d",&n,&a[0]);//n表示數(shù)字界限,用全局變量a[0]存放待輸出的數(shù)字個(gè)數(shù) 
32         f(1,a[0]);
33     }
34     //system("pause");
35     return 0;
36 }
View Code

?

轉(zhuǎn)載于:https://www.cnblogs.com/zeze/p/nyoj19.html

總結(jié)

以上是生活随笔為你收集整理的nyoj19 全排列的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。