问题标题: 酷町堂:3816

0
0
已解决
丁政元
丁政元
初级光能
初级光能

怎么做?

丁政元在2019-08-20 16:41:54追加了内容
#include<bits/stdc++.h>
using namespace std;
int a[1000000],n,m,b;
int main()
{
    cin>>n>>b;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    m=n/2;
    for(int k=1;k<=b;k++)
    {   
        for(int i=1;i<=n/2;i++)
    {
        a[i]=a[i]+a[n+1-i];
    }
    if(n%2==0)
    n/=2;
    n=n/2+1;
    }
    for(int i=1;i<=n;i++)
    cout<<a[i]<<" ";
    return 0;
}

 


0
已采纳
杨乐舒
杨乐舒
初级守护
初级守护

你好!!

数组可以定义大一点;

第11,12行可换为while(b- -);

其余不用变噢!!!!

杨乐舒在2019-08-20 20:06:01追加了内容

再将第18,19,20行换为:

if(n%2==0)
    n/=2;

else
    n=n/2+1;

0
0
朱小川
朱小川
缔造者
缔造者

数组定义大一点,不然会超时

我要回答