#include <stdio.h>
(30951)#include <string.h>
int main() {
int n;
scanf("%d", &n);
char bin[501];
scanf("%s", bin);
// 判断是否为全0或全1
int allZero = 1, allOne = 1;
for (int i = 0; i < n; i++) {
if (bin[i] != '0') {
allZero = 0;
break;
}
}
for (int i = 0; i < n; i++) {
if (bin[i] != '1') {
allOne = 0;
break;
}
}
if (allZero || allOne) {
printf("%s\n", bin);
return 0;
}
char minBin[501];
strcpy(minBin, bin);
for (int i = 0; i < n; i++) {
for (int j = i; j < n; j++) {
char temp[501];
strcpy(temp, bin);
for (int k = i; k <= j; k++) {
temp[k] = bin[j - (k - i)];
}
if (strcmp(temp, minBin) < 0) {
strcpy(minBin, temp);
}
}
}
printf("%s\n", minBin);
return 0;
}这个代码有啥问题