7-16 求符合给定条件的整数集 (15 分)
#include <stdio.h>
#include <math.h>
#include<algorithm>
#include<string>
using namespace std;
bool visit[11];
int s;
int output = 0;
void enheng(int v,int idx,int data) {
if (idx>=3)
{
printf("%d",data);
if (++output >= 6) {
printf("\n");
output = 0;
}
else
{
printf(" ");
}
return;
}
if (!v) {
return;
}
for (int i = 0; i < 4; i++)
{
if (!visit[s+i])
{
visit[s + i] = true;
enheng(v-1,idx+1,data*10+(s+i));
visit[s + i] = false;
}
}
}
int main()
{
scanf("%d", &s);
for (int i = 0; i < 4; i++)
visit[s + i] = false;
enheng(4,0,0);
return 0;
}