思路+代码
2024-11-10 23:02:44
发布于:江苏
5阅读
0回复
0点赞
回到题目
这道题只需要判断每一个数组是否满足美丽数组的条件,可以定义两个函数来实现。
#include <iostream>
using namespace std;
bool ck(int a[],int n)//判断下标为奇数对应的元素和和下标为偶数对应的元素和是否相等
{
long long s=0,s2=0;
for (int i=1; i<=n; i++)
{
if (i%2==0) s+=a[i];
else s2+=a[i];
}
if (s==s2) return 1;
return 0;
}
bool ck2(int a[],int n)//判断是否为回文数
{
int l=1,r=n;
while (l<r)
{
if (a[l]==a[r]) l++,r--;
else return 1;
}
return 0;
}
int t,n,a[(int)1e5+1];
int main()
{
cin >> t;
while (t--)
{
cin >> n;
for (int i=1; i<=n; i++) cin >> a[i];//下标要从1开始
if (ck(a,n) && ck2(a,n)) cout << "Yes" << '\n';
else cout << "No" << '\n';
}
return 0;
}
这里空空如也
有帮助,赞一个