求助
  • 板块灌水区
  • 楼主封禁用户
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/7/13 19:38
  • 上次更新2024/7/13 20:41:11
查看原帖
求助
1363553
封禁用户楼主2024/7/13 19:38
#include <iostream>
using namespace std;
int a[11];
int main() {
    int n,t,z;
    cin>>t;
	for(int i=1;i<=t*2;i++){
		cin>>n;
		cin>>a[i];
	}
	for(int i=2;i<=t;i++){
		if(a[i]+a[i+1]==a[i-1]){
			cout<<"Yes"<<endl;
		}else if(a[i-1]+a[i+1]==a[i]){
			cout<<"Yes"<<endl;
		}else if(a[i-1]+a[i]==a[i+1]){
			cout<<"Yes"<<endl;
		}else{
			cout<<"No"<<endl;
		}
	}
    return 0;
}
题目描述
某位科学家正在深入研究蠕虫的特性。据说,这些蠕虫可能有一种特殊的进化方式——通过不断地分裂演变而来。他手头上有一批蠕虫,每一种的形态都不相同 ,它们的长度分别为a1,a2······an

现在,这位科学家提出了一个有趣的假设:是否存在三种不同形态的蠕虫,使得其中一种的长度等于另外两种的长度之和?他需要你的帮助来验证这个假设。

输入描述
第一行一个整数t,表示含有t组数据。

接下来每组两行,第一行包含一个整数n,表示蠕虫的数量。 第二行包含n个由空格分隔的整数,表示每种形态蠕虫的长度。

输出描述
输出t行,每行输出"Yes"或"No",即如果存在这样的三元组,输出Yes。否则输出No。

样例 #1
样例输入 #1
2
5
1 2 3 5 7
5
1 8 1 5 1
样例输出 #1
Yes
No
2024/7/13 19:38
加载中...