import java.util.*; public class Main { public static void main(String[] args) { Scanner in =new Scanner(System.in); while(in.hasNext()) { StringBuffer sb = new StringBuffer(in.next()); int n =in.nextInt(); while(n>0) { int zerobefore = findzerobefore(sb); if(zerobefore!=-1) { if(zerobefore<=n) { sb.delete(0, zerobefore); n-=zerobefore; re0(sb); if(sb.length()==0) { sb.append("0"); break; } }else { int maxloc = findmax(sb); sb.deleteCharAt(maxloc); n--; if(sb.length()==0) { sb.append("0"); break; } } }else { int maxloc = findmax(sb); sb.deleteCharAt(maxloc); n--; if(sb.length()==0) { sb.append("0"); break; } } } System.out.println(sb); } } public static int findzerobefore(StringBuffer sb) { for(int i =0;i<sb.length();i++) { if(sb.charAt(i)=='0') { return i; } } return -1; } public static int findmax(StringBuffer sb) { int max=sb.charAt(0); int maxloc=0; for(int i =1;i<sb.length();i++) { if(sb.charAt(i)<max) { return maxloc; }else { max=sb.charAt(i); maxloc=i; } } return maxloc; } public static void re0(StringBuffer sb) { while(sb.length()>0) { if(sb.charAt(0)=='0') { sb.deleteCharAt(0); }else { break; } } } } |
Double click to view unformatted code.