1 条题解

  • 0
    @ 2025-10-10 15:45:28

    C :

    #include<stdio.h>
    int main(){
    	int n,i,k,j,t;
    	scanf("%d",&n);
    	scanf("%d",&k);
    	int a[n];
    	for(i=0;i<n;i++){
    		scanf("%d",&a[i]);
    	}
    	for(i=0;i<n-1;i++){
    		for(j=0;j<n-1-i;j++){
    			if(a[j]>a[j+1]){
    			t=a[j];
    			a[j]=a[j+1];
    			a[j+1]=t;
    			}
    		}
    	}
    	printf("%d",a[n-k]);
    	
    	return 0;
    }
    
    
    
    

    C++ :

    #include <iostream>
    #include <iomanip>
    #include <cmath>
    
    using namespace std;
    
    int main(){
    	int n,k,j,t,i,a[1000],s[1000]{0};
    	bool f=false;
    	cin>>n>>k;
    	for(i=0;i<n;i++){
    		cin>>a[i];
    	}
    	for(i=0;i<n;i++){
    	 for(j=0;j<n-i-1;j++){
    	 	if(a[j]<a[j+1]){
    	 		t=a[j];
    	 		a[j]=a[j+1];
    	 		a[j+1]=t;
    		 }
    	 }
    }
        cout<<a[k-1]<<endl;	
    } 
    

    Pascal :

    var n,k,i,j,t:longint;
    a:array[1..100000] of longint;
    begin
    read(n,k);
    for i:=1 to n do
    read(a[i]);
    for i:=1 to n do
    for j:=i+1 to n do
    if a[j]>a[i] then begin t:=a[i];a[i]:=a[j];a[j]:=t;end;
    write(a[k]);
    end.
    

    Java :

    import java.util.Scanner;
    
    
    public class Main {
    	
    	
    	public static void main(String[] args) {
    		Scanner sc=new Scanner(System.in);
    		int n=sc.nextInt();
    		int k=sc.nextInt();
    		int [] a= new int [n];
    		for(int i=0;i<n;i++){
    			a[i]=sc.nextInt();
    		}
    		for(int i=0;i<n;i++){
    			for(int j=1;j<n-i;j++){
    				if(a[j]>a[j-1]){
    					int t=a[j];
    					a[j]=a[j-1];
    					a[j-1]=t;
    				}
    			}
    		}
    		System.out.println(a[k-1]);
    	
    	}
    
    }
    
    

    Python :

    n,k=map(int,input().split())
    l1=[]
    l2=[]
    for i in range(1,n+1):
        a=int(input())
        l1.append(a)
    l1.sort(reverse = True);
    
    print(l1[k-1])
    
    • 1

    信息

    ID
    167
    时间
    1000ms
    内存
    512MiB
    难度
    10
    标签
    递交数
    4
    已通过
    3
    上传者