题目:个人认为,这道题应该是求最大正序的长度。但是从正确的答案中得知,他好像默认从第一个开始了,所以只能有一种。
分析:这道题不难,利用数组,进行第一项与后面大小的判断;
源码:
第一种,我自己写的,还是老方法,没用到库函数
include <bits/stdc++.h>
using namespace std;
int main(void)
{
int T,n;
cin>>T;
for(int i=0;i<T;i++)
{
cin>>n;
long long arr[n],a=1;
for(int j=0;j<n;j++)
{
cin>>arr[j];
}
for(int w=1;w<n;w++)
{
if(arr[0]<arr[w])
{
arr[0]=arr[w];
a++;
}
}
cout<<a<<endl;
}
return 0;
}
第二种:看标准答案写的,用到了库函数
include
include
using namespace std;
int main(){
int T;
cin>>T;
if(T!=0){
while(T){
int x;
set<int>mys; //set中元素的关键字是唯一的,而且默认情况下会对元素按照关键字自动进行升序排列。
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>x;
mys.insert(x); set专用方法。
}
cout<<mys.size()<<endl;
T--;
}
}
return 0;
}
最后一次更新于2022-01-23
0 条评论