脑回路不正常患者 level
获赞
101
粉丝
0
关注
0
看过 TA
0
北京理工大学
2018
Java
IP属地:未知
不想当CTO的程序员不是好厨师
私信
关注
2017-09-05 16:22
已编辑
北京理工大学 Java
第一道题的大致思路是:Kolakoski序列变换后还是Kolakoski序列本身。那么就需要有两个索引变量,一个是Kolakoski序列索引k_index,一个是变换后的Kolakoski序列所以c_index。因为变换前后都是同一个串,所以可以就在一个Kolakoski序列上进行构造操作。也就是说,当前Kolakoski序列的第i个同数字构成子串的长度将成为变换后的Kolakoski序列中的第i个数字(也就是多对一),换而言之,变换后的Kolakoski序列的数对应变换前的Kolakoski序列的子串长度。 给定的数组a[]={1,2},那么开始构造:(粗略思路如下) 1) 不断...
天马星空:#include <iostream> #include <vector> #include <map> using namespace std; int main() {     int n,m;     vector<int> x,y,z;     cin>>n>>m;     int a;     for(int i=0; i<m; i++)     {         cin>>a;         x.push_back(a);     }     for(int i=0; i<x[0]; i++)     {         y.push_back(x[0]);         z.push_back(x[0]);     }     if(x[0]==1)     {   int i;         for(i=0; i<x[1]; i++)         {             y.push_back(x[1]);             z.push_back(x[1]);         }         for(int j=i; j<10000; j++)         {             for(int k=0; k<z[j]; k++)             {                 y.push_back(x[j%m]);                 z.push_back(x[j%m]);                 if(z.size()>n)                     break;             }         }     }     else     {         for(int j=1; j<10000; j++)         {             for(int k=0; k<z[j]; k++)             {                 y.push_back(x[j%m]);                 z.push_back(x[j%m]);                 if(z.size()>n)                     break;             }         }     }         for(int i=0; i<n; i++)             cout<<z[i]<<endl;         return 0;     }
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务