-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsearchAll_1.c
47 lines (40 loc) · 896 Bytes
/
searchAll_1.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char max[64];
int change_count;
void change_function(char *data, int depth){
int ii, jj;
char temp;
char cpy_data[64];
memset( cpy_data, 0x00, sizeof(cpy_data) );
if( depth == change_count){
if( atoi(max) < atoi(data) ){
memset(max, 0x00, sizeof(max) );
strcpy(max, data);
}
}
else{
for( ii = 0; ii < strlen(data); ii++){
for (jj = ii+1; jj < strlen(data) ; jj++){
strcpy(cpy_data, data);
temp = cpy_data[ii];
cpy_data[ii] = cpy_data[jj];
cpy_data[jj] = temp;
change_function(cpy_data, depth+1);
}
}
}
}
int main(void){
int result;
int T;
char data[64];
scanf("%d", &T);
while( T-- ) {
memset(max, 0x00, sizeof(max) );
scanf("%s %d", data, &change_count);
change_function(data, 0);
printf("%s\n", max);
}
}