zoukankan      html  css  js  c++  java
  • codeforces 761B Dasha and friends

    https://vjudge.net/problem/CodeForces-761B

    题意:

    有一个圆形跑道,上面有若干个障碍,分别给出两个人距离障碍的距离,问这两个人是否是在同一个跑道上跑步(我是这么理解的,障碍的相对位置相同,那么他们就在同一个跑道上)。

    思路:

    根据距离计算出障碍之间的距离,然后算两个跑道的距离序列是否一样,当然会有偏移的量,这个时候枚举偏移量就可以了。orz,赛上的时候就是定了一个相同位置就是偏移量在,真是sb。

    代码:

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <algorithm>
     4 using namespace std;
     5 
     6 int main()
     7 {
     8     int a[55],b[55];
     9 
    10     int n,l;
    11 
    12     scanf("%d%d",&n,&l);
    13 
    14     for (int i = 0;i < n;i++)
    15         scanf("%d",&a[i]);
    16 
    17     for (int i = 0;i < n;i++)
    18         scanf("%d",&b[i]);
    19 
    20     int c[55],d[55];
    21 
    22     if (n == 1)
    23     {
    24         printf("YES
    ");
    25 
    26         return 0;
    27     }
    28 
    29     for (int i = 0;i < n - 1;i++)
    30         c[i] = a[i + 1] - a[i];
    31 
    32     c[n-1] = l - (a[n-1] - a[0]);
    33 
    34     for (int i = 0;i < n - 1;i++)
    35         d[i] = b[i+1] - b[i];
    36 
    37     d[n-1] = l - (b[n-1] - b[0]);
    38 
    39     int f = 0;
    40 
    41     for (int i = 0;i < n;i++)
    42     {
    43         for (int j = 0;j < n;j++)
    44         {
    45             if (c[j] != d[(i+j)%n]) break;
    46 
    47             if (j == n - 1)
    48             {
    49                 f = 1;
    50             }
    51         }
    52 
    53         if (f) break;
    54     }
    55 
    56     if (f) printf("YES
    ");
    57     else printf("NO
    ");
    58 
    59     return 0;
    60 }
  • 相关阅读:
    Neditor 2.1.16 发布,修复缩放图片问题
    Neditor 2.1.16 发布,修复缩放图片问题
    每日 30 秒 ⏱ 强风吹拂
    每日 30 秒 ⏱ 强风吹拂
    Python3的日期和时间
    内置函数:exec、eval、compile
    内置函数:zip、filter、map、stored
    匿名函数
    列表推导式和生成器表达式
    生成器send的用法案例
  • 原文地址:https://www.cnblogs.com/kickit/p/7287089.html
Copyright © 2011-2022 走看看