[ABC332C] T-shirts - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
源于atcoder
由于字符串的长度为1000.不论怎样,顺序枚举即可。
import java.awt.FontFormatException;
import java.awt.geom.AffineTransform;
import java.awt.image.BandCombineOp;
import java.awt.image.DataBufferInt;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.security.PublicKey;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Scanner;import javax.imageio.plugins.tiff.BaselineTIFFTagSet;
public class Main {public static void main(String[] args) throws IOException {Scanner sc=new Scanner(System.in);BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));PrintWriter pw1=new PrintWriter(System.out);
String[] aStrings=br1.readLine().split(" ");
data=Integer.parseInt(aStrings[0]);
aa=Integer.parseInt(aStrings[1]);
String bString=br1.readLine();
int a=aa;
int a1=0;
int b;
int answer=0;
for(b=0;b<data;b++) {if(bString.charAt(b)=='1') {//遇到1普通T恤减一if(a!=0) {a--;}else {//一旦普通T恤不够用,将特殊T恤减一a1--;}}else if(bString.charAt(b)=='2') {a1--;//遇到2时直接特殊T恤减一}else {//遇到0时,开始洗T恤if(a1<0) {aa1=aa1-a1;//令最终的答案加上额外的特殊T恤}a1=aa1;//将特殊T恤和普通T恤的数量重置a=aa;}
}
if(a1<0) {//如果没有重洗这一步,我们额外判断一下aa1=aa1-a1;
}
System.out.println(aa1);
}
public static int aa=0;
public static int aa1=0;
public static int data;
}