2配列HDU1716

データの最後のセットは改行ではないの後に私の一日は本当に空白行の背後にあるその最後のグループを再生しないように参照する、野菜を栽培します!そして、0000は、データの最後のセットではありません!それは限り、あなたは通常、改行を作ることができるように、です!
改行位置を参照してください!
コードは以下の通りです

#include <bits/stdc++.h>
using namespace std;
int main()
{
	int a[5],ok = 0;
	while(1){
		for (int i = 0; i < 4; i++) scanf("%d",&a[i]);
		if(!a[0] && !a[1] && !a[2] && !a[3]) break;
		if(!ok) ok = 1; else printf("\n");//最后一组数据不要换行指的是最后面没有空行 
		sort(a,a+4);
		while(a[0] == 0) next_permutation(a,a+4);
		int f = 0,k = a[0];
		
		do{
			if(k != a[0]){
				f = 0; printf("\n");
			}
			if(!f) f = 1; else printf(" ");
			printf("%d%d%d%d",a[0],a[1],a[2],a[3]); 
			k = a[0];	
		}while(next_permutation(a,a+4));
		printf("\n");	
 	}
 	return 0;
 } 
公開された55元の記事 ウォンの賞賛1 ビュー2638

おすすめ

転載: blog.csdn.net/qq_37548017/article/details/103241361