hdu Eddy's 洗牌问题

来源:互联网 发布:淘宝代销怎样关联 编辑:程序博客网 时间:2024/06/08 07:53

开始自己的做的TLE了 我去  花了好长时间才想出来的  居然超时 尼玛 又错了 


然后自己慢慢优化 又来了半天 还是超时 这时我的小宇宙收不了了 

这时我发现了 肯定有巧方法

所以就去搜了题解  点击打开链接

#include<iostream>   #include<string.h>   #include<stdio.h>   #include<ctype.h>   #include<algorithm>   #include<stack>   #include<queue>   #include<set>   #include<math.h>   #include<vector>   #include<map>  using namespace std;# define MAX 100000 int b[MAX];int a[MAX];  int main(){int n;while(scanf("%d", &n) != EOF){while(cin >> n){//cout<<"n="<<n<<endl;for (int i =1 ; i <= 2*n; i++) a[i] = i;int cnt=0;while(1){cnt++;int b[MAX];for(int i =1 ;i <= 2*n; i++) b[i] =a[i];//辅助  辅助数组 for(int i =1 ,j = 1+n;i <= n; i++,j++){a[i*2] = b[i] ;a[(j-n)*2 - 1] = b[j]; } if( a[1] ==1) { cout << cnt << endl; break; }}}}return 0;}


0 0
原创粉丝点击