这里是C++代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long int _=1;
cin >> _;
while(_--)
{
long long int n,i,even=0,odd=0;
cin >> n;
//changes are in these two lines
vector<int>v(n+5);
//long long int v[n+5];
for(i=0;i<n;i++)
{
cin >> v[i];
if(v[i]%2==0)
even+=(v[i]/2);
else
odd+=(((v[i]+1)/2));
}
if(odd>=even) cout << "Rafiq\n";
else cout << "Shafiq\n";
}
return 0;
}
这是测试用例的链接:https://pastebin.com/WGx8irBr
正确的输出应该是我正在使用数组的“Shafiq Shafiq”。但是当我使用矢量时,它会输出“Shafiq Rafiq”。
为什么会这样? 提前致谢。