AcWing 1211. 蚂蚁感冒 (分析)

喜欢而已 提交于 2020-02-05 22:09:09

Problem

这个题之前困扰了一段时间,没想到点拨一下,蚂蚁碰面可以看作不掉头而继续前进,因为两只蚂蚁如果都染病了,掉头和前进没有区别。

这样就简单了许多,分别按情况统计染病蚂蚁即可。

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class Main {
    static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    static PrintWriter pw = new PrintWriter(System.out);
    static int n;

    public static void main(String[] args) throws Exception {
        String[] s = br.readLine().split(" ");
        n = Integer.parseInt(s[0]);
        int f = 0, l = 0, r = 0;
        f = Integer.parseInt(s[1]);
        s = br.readLine().split(" ");
        for (int i = 1; i < n; i++) {
            int x = Integer.parseInt(s[i - 1]);
            if (Math.abs(x) < Math.abs(f) && x > 0) r++;
            if (Math.abs(x) > Math.abs(f) && x < 0) l++;
        }
        if (f < 0 && r == 0 || f > 0 && l == 0) pw.println(1);
        else pw.print(l + r + 1);

        pw.flush();
        pw.close();
        br.close();
    }
}

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!