zoukankan      html  css  js  c++  java
  • Problem A: 小火山的跳子游戏 多校训练2(小火山专场)(周期)

    题目链接:http://acm.zzuli.edu.cn/zzuliacm/problem.php?cid=1158&pid=0

    zzuli 1905

     题意:如果k=1的话是1,2,3,4...n-1,n,n-1...3,2,1。可以看出这个周期是2*n-2,所以只要gcd(2*n-2, k)==1就是可以全部标记完的。

    因为走到一个走过的并且方向一样并且没有标记全部的话就不可能能标记完了,所以要走2*n-2次没有重复位置和方向的,也就是gcd(2*n-2,k)==1.

    Sample Input
    
    2
    6 4
    2 1
    Sample Output
    
    No
    Yes

    ************************************************

     1 #include<iostream>
     2 #include<algorithm>
     3 #include<cstdio>
     4 #include<cstring>
     5 #include<queue>
     6 #include<stdlib.h>
     7 #include<map>
     8 #include<cmath>
     9 
    10 using namespace std;
    11 
    12 #define N 5500
    13 #define INF 0x3f3f3f3f
    14 
    15 int main()
    16 {
    17     int T,n,k,ans;
    18 
    19     scanf("%d", &T);
    20 
    21     while(T--)
    22     {
    23         scanf("%d%d", &n,&k);
    24 
    25         if(k==1)
    26         {
    27             printf("Yes
    ");
    28             continue ;
    29         }
    30 
    31         ans=gcd((n-1)*2,k);
    32 
    33         if(ans==1)
    34             printf("Yes
    ");
    35         else
    36             printf("No
    ");
    37     }
    38     return 0;
    39 }
  • 相关阅读:
    Yslow-23条规则
    ASP.Net MVC多语言
    Java笔记--反射机制
    Java笔记--常用类
    Java笔记--多线程
    Java--IO流
    Java笔记--枚举&注解
    Java笔记--泛型
    Java笔记--异常
    Java笔记--集合
  • 原文地址:https://www.cnblogs.com/weiyuan/p/5757049.html
Copyright © 2011-2022 走看看