3 条题解

  • 0
    @ 2025-1-11 20:21:38

    还是可以用set

    #include<bits/stdc++.h>
    using namespace std;
    int n,k,ans;
    set<int>a;
    set<int>::iterator it;
    bool b;
    
    int main(){
    	freopen("knumber.in","r",stdin);
    	freopen("knumber.out","w",stdout);
    	scanf("%d%d",&n,&k);
    	for(int i=1;i<=n;i++){
    		int x;
    		scanf("%d",&x);
    		a.insert(x);
    	}
    	for(it=a.begin();it!=a.end();it++){
    		ans++;
    		if(ans==k){
    			printf("%d",*it);
    			b=1;
    			break;
    		}
    	}
    	if(!b) printf("NO RESULT");
    	return 0;
    }
    
    • 0
      @ 2024-5-8 20:59:17

      桶排只用一个数组就可以了呦

      using namespace std;
      int a[10010],n;
      int main()
      {
      scanf("%d",&n);
      int k;
      scanf("%d",&k);
      for (int i=1;i<=n;i++)
      {
      int tmp;
      scanf("%d",&tmp);
      a[tmp]=1;
      }
      int ttt=0;
      for (int i=1;i<=10010;i++)
      {
      if (a[i]==1)
      ttt++;
      if (ttt==k)
      {
      printf("%d",i);
      return 0;
      }
      }
      printf("NO RESULT");
      return 0;
      }
      
      • 0
        @ 2023-2-19 16:44:29

        桶排,不解释

        #include<bits/stdc++.h>
        using namespace std;
        int a[30001],n,k,b[10001],c[10001];
        int main()
        {
        	cin>>n>>k;
        	for(int i=1;i<=n;i++)
        	{
        		cin>>a[i];
        		b[a[i]]=1;
        	}
        	int h=0;
        	for(int i=1;i<=10001;i++)
        	{
        		if(b[i]!=0) c[++h]=i;
        	}
        	if(k>h) cout<<"NO RESULT";
        	else cout<<c[k];
        	return 0;
        }
        
        • 1

        信息

        ID
        437
        时间
        1000ms
        内存
        256MiB
        难度
        5
        标签
        递交数
        57
        已通过
        23
        上传者