https://nanti.jisuanke.com/t/39279

题意:给一个数组操作1:前后部分调换(n为偶数中间的不变);操作2: 偶数位置与前面位置的交换(n为奇数最后一个不变)

思路:打表找规律,n偶数时如果是4倍数就是4,不是就是数组长度;n为奇数时发现每个一个奇数是12,其余是2*n;

#include<algorithm>
#include<set>
#include<queue>
#include<cmath>
#include<cstring>
#include<iostream>
#include<set>
#include<vector>
#include<queue>
#include<cmath>
#include<cstdio>
#include<map>
#include<stack>
#include<string>
#include<bits/stdc++.h>
using namespace std;#define sfi(i) scanf("%d",&i)
#define pri(i) printf("%d\n",i)
#define sff(i) scanf("%lf",&i)
#define ll long long
#define ull unsigned long long
#define mem(x,y) memset(x,y,sizeof(x))
#define INF 0x3f3f3f3f
#define eps 1e-16
#define PI acos(-1)
#define lowbit(x) ((x)&(-x))
#define zero(x) (((x)>0?(x):-(x))<eps)
#define fl() printf("flag\n")
#define MOD(x) ((x%mod)+mod)%mod
#define endl '\n'
#define pb push_back
#define lson rt<<1,l,mid
#define rson rt<<1|1,mid+1,r
#define FAST_IO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)const int maxn=1e6+9;
const int mod=1e9+7;inline ll read()
{ll f=1,x=0;char ss=getchar();while(ss<'0'||ss>'9'){if(ss=='-')f=-1;ss=getchar();}while(ss>='0'&&ss<='9'){x=x*10+ss-'0';ss=getchar();}    return f*x;
}/*map<vector<int>,bool> mp;
ll cnt=0;
int n;
void dfs(vector<int> s,int len)
{if(mp[s]) return ;//for(int i=0;i<len;i++) cout<<s[i]<<" ";//cout<<endl;mp[s]=1;cnt++;vector<int> temp=s;int mid=(len+1)/2;for(int i=0;i<len/2;i++){swap(temp[i],temp[mid+i]);}//cout<<temp<<endl;dfs(temp,len);temp.clear();temp=s;for(int i=1;i<len;i+=2){swap(temp[i],temp[i-1]);}//cout<<temp<<endl;dfs(temp,len);
}*/
int main()
{//FAST_IO;//freopen("input.txt","r",stdin);ll n;cin>>n;//vector<int> s;//mp.clear();for(int i=0;i<n;i++){string x;cin>>x;//s.pb(x);//s.pb(i);}if(n==1){cout<<1<<endl;}else if(n==2){cout<<2<<endl;}else if(n==3){cout<<6<<endl;}else if(n%2==1){if((n-5)%4==0)cout<<n*2<<endl;else cout<<12<<endl;}else{if(n%4==0) cout<<4<<endl;else cout<<n<<endl;}/*for(int i=2;i<=200;i++){int n=i;vector<int> s;for(int j=0;j<n;j++) s.pb(j+1);if(n<=2)cout<<n<<endl;else {cnt=0;dfs(s,s.size());if(i%2==1)cout<<i<<":"<<cnt<<endl<<endl;}}*/return 0;
}

The 2019 ACM-ICPC China Shannxi Provincial Programming Contest-L.Swap相关推荐

  1. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest题解

    以下所有AC题解程序来自"仙客传奇"团队. A. Tasks AC的C++语言程序: /* JSK-39268 Tasks */#include <bits/stdc++.h ...

  2. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest

    原题链接:https://www.jisuanke.com/contest/2625?view=challenges A. Tasks #include<bits/stdc++.h> us ...

  3. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest C.Angel's Journey(计算几何基础)

    题目 T(T<=500)组样例,每组样例给出rx,ry,r,x,y(-100<=rx,ry,x,y<=100,0<r<=100) 代表被救的人在(rx,ry-r)位置,且 ...

  4. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest J.And And And(启发式合并)

    题目 n(n<=1e5)个点的树,是一棵点1为根的有根树, 每条边有一边权w(0<=w<=1e18) 简化题意,如果u<v,且树上(u,v)之间的边权异或和为0, 则如果把(u ...

  5. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest( J. And And And)

    J题 题解:该题有好多种做法,我的比较low,因为正向的去推是不可行的,我们可以反向考虑每一条边权异或值为0的路径所产生的贡献,我们先把整棵树的根节点固定为1,然后我们可以考虑将满足条件的路径再细分为 ...

  6. E. Tree(The 2019 ACM-ICPC China Shannxi Provincial Programming Contest)(树链剖分+线段树)

    4000ms 262144K judge:计蒜客 Description Ming and Hong are playing a simple game called nim game. They h ...

  7. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest C.Angel's Journey

    题意: T(T<=500)组样例,每组样例给出rx,ry,r,x,y(-100<=rx,ry,x,y<=100,0<r<=100) 代表被救的人在(rx,ry-r)位置, ...

  8. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest (西安邀请赛重现) J. And And And...

    链接:https://nanti.jisuanke.com/t/39277 思路: 一开始看着很像树分治,就用树分治写了下,发现因为异或操作的特殊性,我们是可以优化树分治中的容斥操作的,不合理的情况只 ...

  9. The 2021 ICPC Asia Taipei Regional Programming Contest L. Leadfoot(组合数学/2-adic赋值函数+kummer定理)

    题目 这个题意还是看题面比较好 司机个数未知,每个司机初始赢0局,输0局, 两个当前赢的局数和输的局数相同的司机,会在一起比赛一局, 比完之后,其中一个司机赢的局数+1,另一个司机输的局数+1, 司机 ...

最新文章

  1. day44前端开发1之html基础
  2. 为什么单片机程序中会有延时程序加入
  3. python 代理ip验证_python爬虫成长之路(二):抓取代理IP并多线程验证
  4. java 压缩文件tar_使用Java API进行tar.gz文件及文件夹压缩解压缩
  5. UNITY中使用不安全代码的相关设置
  6. 开机动画适配方案_2020 年 4 月前 App 启动画面、屏幕调整需按要求适配,否则存拒审风险!...
  7. 【Python笔记】异常处理
  8. 一个c++程序员一年前的生活笔记
  9. Linux环境下为普通用户添加sudo权限
  10. 关于数据库的水平切分和垂直切分的一些概念(转)
  11. Java的互斥同步机制
  12. FLEX4 在组件中自定义ToolTip样式
  13. linux删除第二列为空_Linux系列第二谈(开机关机、Linux中的文件、目录管理、基本属性)...
  14. 苹果显示器(Apple Cinema Display)连接Windows的亮度调节方法(Win10可用)
  15. 使用Vue前端框架实现知乎日报app
  16. 三顾讯时--对讯时新闻发布系统的艰难突破
  17. 无广告托管应用,免费的应用分发平台,提供下载次数等数据统计,Android、ios应用合并,一个二维码搞定
  18. CANopen总线的高级协议详解
  19. 26岁从计算机视觉界“黄埔军校”博士毕业,他想为车打造一双慧眼
  20. 远程桌面鼠标键盘映射问题

热门文章

  1. 节卡率先冲刺科创板,协作机器人商业化正当时
  2. 大屏幕拼接电视墙用液晶还是投影?
  3. 基于autojs编写一个自弹钢琴脚本——《纸短情长》
  4. 心理测评软件语音导读播报功能:2022年率先实现的一个功能
  5. 33. 汽车软件质量改善
  6. 2022-2028年中国五轴联动机床行业市场运行格局及前景战略分析报告
  7. 4.2023计算机领域顶会(A类)以及ACL 2023自然语言处理(NLP)研究子方向领域汇总
  8. 课程升级后-课件软件下载地址
  9. 简谈 网络中AS自治系统
  10. 【Python学习】matplotlib图表无法显示中文