剑指offer61 扑克牌中的顺子
这题把所有情况考虑好其实很简单
import java.util.Arrays; public class Solution { public boolean isContinuous(int [] numbers) { if(numbers.length<5) return false; Arrays.sort(numbers); int start = 0; while(numbers[start]==0) start++; int jokers = start-0; for(int i=start+1;i<numbers.length;i++){ if(numbers[i]==numbers[i-1]) return false; else if(numbers[i]==numbers[i-1]+1) continue; else if(numbers[i]>numbers[i-1]+1){ if(jokers>=numbers[i]-numbers[i-1]-1){ jokers-=numbers[i]-numbers[i-1]-1; }else return false; } } return true; } }
运行时间:11ms
占用内存:9408k

浙公网安备 33010602011771号