我想说如果vector = 4 cout<<"Yes"
中的最后一个元素的值我怎么能写代码写if(v.size()==y)
,其中y是一个数字但它不起作用我最近开始编写代码
#include <iostream>
#include <vector>
#include <stdio.h>
using namespace std;
int main()
{
int n,x,y;
cin >> n >> x >> y;
vector<int> v(n);
for(int i = 0; i < n; i++)
{
cin >> v[i];
}
for(int i = 0; i < n; i++)
{
if(v[0] == x)
{cout<<"EASY";
return 0;
}
if(v[0] == x && v.back() == y)
{
cout << "BOTH";
return 0;
}
if(v.back()==y)
{
cout << "HARD";
return 0;
}
if(v[0] != x && v.back() != y)
{
cout << "OKAY";
return 0;
}
}}
答案 0 :(得分:15)
v.size()
将返回v
中元素的数量,而不是向量中的最后一个元素。
要获取vector
的最后一个值,您只需拨打std::vector::back()
。
当然,您必须先检查std::vector::empty
,确保vector
在此之前不为空。
if (!v.empty() && v.back()==y)
{
...
}