zoukankan      html  css  js  c++  java
  • Codeforces Round #310 (Div. 2)--B

    http://codeforces.com/problemset/problem/556/B

    题意:给定n个数字且都小于n,然后每次循环第2k+1个数字+1,第2k个数字减一,k=0,1,2...n/2.  问最后能不能使n个数字刚好为排列为0,1,2,....n-1.

    题解:简单模拟就好了,循环次数设为n-1,因为n次循环后回到原来的排列。

     1 #include <cstdio>
     2 #include <cmath>
     3 #include <cstring>
     4 #include <ctime>
     5 #include <iostream>
     6 #include <algorithm>
     7 #include <set>
     8 #include <vector>
     9 #include <sstream>
    10 #include <queue>
    11 #include <typeinfo>
    12 #include <fstream>
    13 #include <map>
    14 #include <stack>
    15 using namespace std;
    16 typedef long long ll;
    17 const int maxn=1010;
    18 int n,a[maxn];
    19 int main()
    20 {
    21     scanf("%d",&n);
    22     for(int i=0;i<n;i++)
    23         scanf("%d",&a[i]);
    24     int t=1,sum=0;
    25     while(t<=n){
    26         for(int i=0;i<n;i++){
    27             if(a[i]==i) sum++;
    28             if(i%2==0){
    29                 if(a[i]==n-1) a[i]=0;
    30                 else a[i]+=1;
    31             }
    32             else{
    33                 if(a[i]==0) a[i]=n-1;
    34                 else a[i]-=1;
    35             }
    36         }
    37         if(sum==n) break;
    38         else sum=0;
    39         t++;
    40     }
    41     if(sum==n) printf("Yes
    ");
    42     else printf("No
    ");
    43     return 0;
    44 }
  • 相关阅读:
    java导出pdf格式文档
    本地文件夹选择框
    将文件解除占用
    Windows 进入上帝模式窗口
    Windows 10 系统获取密钥方法
    CentOS7 systemctl 命令
    一键立即息屏
    定时关闭程序
    CentOS 7 FTP的安装与配置
    SQL基础
  • 原文地址:https://www.cnblogs.com/RRirring/p/4614448.html
Copyright © 2011-2022 走看看