蓝桥杯小白入门赛第六场 2.猜灯谜【算法赛】 知识点:特判

542 阅读1分钟

2.猜灯谜【算法赛】 - 蓝桥云课 (lanqiao.cn)

根据样例我们发现首尾的和给中间元素,中间元素和尾的和给首元素,首和中间元素的和给尾 image.png image.png

#include <iostream>
using namespace std;
int main()
{
  // 请在此输入您的代码
int n;
cin>>n;
int *arr=new int[n];
  for(int i=0;i<n;i++){
    cin>>arr[i];
  };
   for(int j=0;j<n;j++){
    if(j==0) cout<<arr[1]+arr[n-1]<<" ";  //首项=首项后一项和尾项的和
    else if(j==n-1) cout<<arr[j-1]+arr[0]<<" "; //尾项=首项和尾项前一项的和
    else cout<<arr[j-1]+arr[j+1]<<" ";  //首尾处理完,其他部分就按正常前一项后一项相加得出和
   }
  return 0;
}