不知道我的代码为什么不对,可以帮我看看吗
查看原帖
不知道我的代码为什么不对,可以帮我看看吗
1297107
Sz_Mwindy楼主2024/3/9 16:54
#include<iostream>
#include<set>
using namespace std;
int main(){
	long long n,Q;
	cin>>n>>Q;
	set<long long> dp;
	int r;
	for(int i=0;i<n;i++){
		long long x;
		cin>>x;
		if(i==0) r=x;
		dp.insert(x);
	}
	while(Q--){
		long long t;
		cin>>t;
		if(dp.find(r/t)!=dp.end()) cout<<"YES"<<endl;
		else cout<<"NO"<<endl;
	}
	return 0;
} 

根据高中物理可知,紧邻的齿轮的线速度是等大的,由此我们可以得出: n1r1=n2r2=m3*r3=... 这样,我们只需要找到给出的这组数据里是否具有这个元素,即最左端齿轮的半径r/倍数q。 在我的代码中我用了c++的迭代器set,我通过不断向set里压入数据,在后面的讯问中,计算出查找元素的值,然后利用set内部的find函数来查找是否存在,如果存在输出YES,否则NO。 以上是我的代码思路,但我在提交后,出现了如下错误: Wrong Answer.wrong answer On line 1 column 1, read Y, expected N. 有大神可以帮我看看为什么吗?

2024/3/9 16:54
加载中...