• Codeforces Round #394 (Div. 2)


    题目链接:http://codeforces.com/contest/761/problem/B

    题意:给定一个环形跑道。里面有n个障碍,跑道长度为L。然后有两个人在两个起点(起点可能相同),每个人都按逆时针走。现在给出这两个人遇到这n个障碍时走的步数。问是否存在合法的障碍分布。
    思路:我们假设第一个人的起点为原点。那么对于第一个人来说n个障碍的位置就是对于他的输入序列。然后枚举第二个人的起点。根据第二个人的序列来判断是否和第一个人的位置一样。一样则说明存在合法分布。 注意由于跑道是环形所以要进行取模。

    import java.io.PrintWriter;
    import java.util.*;
    
    public class Main {
        public static final int MAXN=100+5;
        public static int v[]=new int [MAXN];
        public static int pa[]=new int [MAXN];
        public static int pb[]=new int [MAXN];
        public static void main(String[] args) {
            Scanner cin = new Scanner(System.in);
            PrintWriter out = new PrintWriter(System.out);
            int n=cin.nextInt(),L=cin.nextInt();
            boolean flag=false; 
            Arrays.fill(v, 0);
            for(int i=0;i<n;i++){
                pa[i]=cin.nextInt();
                v[pa[i]]=1;
            }
            for(int i=0;i<n;i++){
                pb[i]=cin.nextInt();
            }
            for(int i=0;i<L;i++){
                Set<Integer>se=new HashSet<Integer>();
                for(int j=0;j<n;j++){
                    if(v[(i+pb[j])%L]==1){
                        se.add((i+pb[j])%L);
                    }else{
                        break;
                    }
                }
                if(se.size()==n){
                    flag=true; break;
                }
            }
            out.printf(flag?"YES":"NO");
            cin.close();
            out.flush();
        }
    }
  • 相关阅读:
    Laravel 中使用 Redis 数据库
    PHP 安装 phpredis 扩展(二)
    Redis 安装(一)
    macOS 中使用 phpize 动态添加 PHP 扩展的错误解决方法
    macOS 中的 Rootless 机制
    Homebrew
    macOS 下配置 MAMP 开发环境(Mac + Apache + Mysql + PHP)
    常系数齐次线性递推
    任意模数FFT
    猫树总结
  • 原文地址:https://www.cnblogs.com/kirito520/p/6420271.html
Copyright © 2020-2023  润新知