题目:个人认为,这道题应该是求最大正序的长度。但是从正确的答案中得知,他好像默认从第一个开始了,所以只能有一种
分析:这道题不难,利用数组,进行第一项与后面大小的判断;
源码:
第一种,我自己写的,还是老方法,没用到库函数
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;
}