环和杆
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;class Solution {public static void main(String[] args) {System.out.println(countPoints("B0R0G0R9R0B0G0"));}public static int countPoints(String rings) {Map<Integer,String> map=new HashMap<>();Set<Integer>set=new HashSet<>();int n,ans=0;String s="";String st="";for(int i=0;i<rings.length();i++){if(rings.charAt(i)<='9'&&rings.charAt(i)>='0'){n=rings.charAt(i)-'0';if(map.containsKey(n)){st=map.get(n);st+=s;s=st;if(cheak(s)){set.add(n);}}map.put(n,s);s="";}else {char c=rings.charAt(i);s+=c;}}return set.size();}private static boolean cheak(String st) {if(st.contains("R")&&st.contains("G")&&st.contains("B"))return true;return false;}
}
模拟模拟~用了hash和set,我好菜啊~
去看看大佬的方法。。。