题目描述 给定一个正整数(<=255位),从中删去n位后,使得剩下的数字组成的新数最小。 输入格式 第一行,要处理的正整数第二行,一个整数n (n<255) 输出格式 仅一行,组成的最小的新数 样例输入 1027 3 样例输出 0 三维状态图像 贪心例题。 小心最终结果以0开头。 #include<stdio.h> #include<string.h> int a[300]; char s[200]; int n,len; int main() { scanf("%s%d",s,&n); len=strlen(s); for (int i=1;i<=len;++i) a[i]=s[i-1]-'0'; for (int i=1;i<=n;++i) for (int j=1;j<=len;++j) if (a[j]>a[j+1]) { for (int k=j;k<=len;++k) a[k]=a[k+1]; --len; break; } int s=1; while (a[s]==0&&s<len) ++s; for (int i=s;i<len;++i) printf("%d",a[i]); printf("%d/n",a[len]); return 0; }