思维题: 题目链接
思路:
会打扰别人的灯满足条件:
1.前一个灯是灭的。
2.前面的第二个灯和现在的灯是开着的。
arr.get(i-1).equals(0)&&arr.get(i).equals(1)&&(!arr.get(i-2).equals(0)))
注意:
如果满足了上述条件,需要把这个灯关掉再进行以后的判断
import java.math.BigInteger; import java.util.*; import java.lang.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner(System.in); int n=cin.nextInt(); List<Integer> arr=new ArrayList<Integer>(); for(int i=0;i<n;i++) { arr.add(cin.nextInt()); } int ans=0; for(int i=2;i<n;i++) { if(arr.get(i-1).equals(0)&&arr.get(i).equals(1)&&(!arr.get(i-2).equals(0))){ arr.set(i, 0); ans++; } } System.out.println(ans); } }