whileループを理解するのに役立ちますか?例えば、ユーザーからの入力を受け取ります。1 2 3 8(入力サイズが指定されていません)と1つの値(任意のインデックス)が配列のサイズを表示します。配列の最大値を出力しています。ここでは答えは8です。文字列をC++で整数の配列に変換する
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main()
{
int t;
cin >> t;
while(t--)
{
string x;
getline(cin, x);
ll p;
istringstream iss(x);// use of this function
vector<ll> v;
ll ans;
while(iss>>p)// what this loop do
{
v.push_back(p);
}
ll size=v.size()-1;
sort(v.begin(), v.end());
if(size==v[size])
{
ans=v[size-1];
}
else
{
ans=v[size];
}
cout<<ans<<"\n";
}
return 0;
}
私の友人そのためのより良い説明が見ているhttps://stackoverflow.com/questions/7663709/convert-string-to-int-c – joeydash
あなたはCINから1つの文字を無視すべきです、文字列を正しく入力することができます。 cin.ignore()を使用します。後のcin >> t; :) –