1 条题解

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

    C :

    #include<stdio.h>
    
    int a[101],b[1001];
    int main()
    {
    	int i,n,t,c=0;
    	scanf("%d",&n);
    	for(i=1;i<=n;i++){
    		scanf("%d",&a[i]);
    		t=a[i];
    		if(b[t]==0){
    			c++;
    		}
    		b[t]++;
    		
    	}
    	printf("%d\n",c);
    	for(i=0;i<=1000;i++){
    		if(b[i]>0){
    			printf("%d\n",i);
    		}
    		
    	}
    	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},c=0;
    	bool f=false;
    	cin>>n;
    	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;
    		 }
    	 }
    }
        for(i=0;i<n;i++){
        	for(j=0;j<i;j++){
        		if(a[i]==s[j]){
        			f=true;
    			}
    		}
    		if(f!=true){
    			s[i]=a[i];
    			c++;
    		}
    		f=false;
    	}
    	cout<<c<<endl;
    	for(i=0;i<n;i++){
    		if(s[i]!=0){
    			cout<<s[i]<<endl;
    		}
    	}
    } 
    

    Pascal :

    var a,b:array[1..1000000] of longint;
        i,c,s:longint;
    begin
    read(c);
    for i:=1 to c do
    read(a[i]);
    for i:=1 to c do
    b[a[i]]:=b[a[i]]+1;
    for i:=1 to 1000000 do
    if b[i]<>0 then inc(s);
    writeln(s);
    for i:=1 to 1000000 do
    if b[i]<>0 then
    writeln(i);
    end.
    

    Java :

    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Scanner;
    
    public class Main{
    	public static void main(String[] args) {
    		List<Integer> sortList=new ArrayList<Integer>();
    		HashSet<Integer> hs=new HashSet<Integer>();
    		Scanner scanner = new Scanner(System.in);
    		String n = scanner.nextLine();
    		if(scanner.hasNext()){
    			String  numberString=scanner.nextLine();
    			String[] strArray=numberString.split(" ");
    			for(int i=0;i<strArray.length;i++){
    				if(!"".equals(strArray[i])){
    					int a=Integer.valueOf(strArray[i]);
    					hs.add(a);
    				}
    			}
    			sortList.addAll(hs);
    	        Collections.sort(sortList);
    	        System.out.println(sortList.size());
    	        for(Integer num:sortList){
    	            System.out.println(num);
    	        }	
    		}	
    	}
    }
    

    Python :

    n=int(input())
    l1=list(map(int,input().split()))
    l2=[]
    l3=[]
    for i in range(0,1001):
        l2.append(0)
    for i in l1:
        l2[i]+=1  #得出l1中所有数的重复次数
    for i in l1:
        if l2[i]>1:
            l1.remove(i)
    print(len(l1))
    l1.sort()
    for j in l1:
        print(j)
    
    • 1

    信息

    ID
    178
    时间
    1000ms
    内存
    512MiB
    难度
    10
    标签
    递交数
    18
    已通过
    1
    上传者