1 条题解

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

    C :

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

    C++ :

    #include <iostream>
    
    using namespace std;
    
    int main(){
    	int n,i,x,s[10]={0};
    	cin>>n;
    	for(i=1;i<=n;i++){
    		x=i;
    		while(x!=0){
    			s[x%10]++;
    			x/=10;
    		}
    	}
    	for(i=0;i<=9;i++){
    		cout<<s[i]<<endl;
    	}
    }
    

    Java :

    import java.util.Scanner;
    
    public class Main {
    
    	public static void main(String[] args) {
    		Scanner scanner=new Scanner(System.in);
    		int N=scanner.nextInt();
    		String line="";
    		for(int i=1;i<=N;i++){
    			line=line+String.valueOf(i);
    		}
    		int num_1=0;
    		int num_2=0;
    		int num_3=0;
    		int num_4=0;
    		int num_5=0;
    		int num_6=0;
    		int num_7=0;
    		int num_8=0;
    		int num_9=0;
    		int num_0=0;
    		char[] charArray=line.toCharArray();
    		for(int j=0;j<charArray.length;j++){
    			if(charArray[j]=='1'){
    				num_1++;
    			}
    			if(charArray[j]=='2'){
    				num_2++;
    			}
    			if(charArray[j]=='3'){
    				num_3++;
    			}
    			if(charArray[j]=='4'){
    				num_4++;
    			}
    			if(charArray[j]=='5'){
    				num_5++;
    			}
    			if(charArray[j]=='6'){
    				num_6++;
    			}
    			if(charArray[j]=='7'){
    				num_7++;
    			}
    			if(charArray[j]=='8'){
    				num_8++;
    			}
    			if(charArray[j]=='9'){
    				num_9++;
    			}
    			if(charArray[j]=='0'){
    				num_0++;
    			}
    			
    		}
    		System.out.println(num_0);
    		System.out.println(num_1);
    		System.out.println(num_2);
    		System.out.println(num_3);
    		System.out.println(num_4);
    		System.out.println(num_5);
    		System.out.println(num_6);
    		System.out.println(num_7);
    		System.out.println(num_8);
    		System.out.println(num_9);
    	}
    }
    

    Python :

    li = [0] * 10
    n = int(input())
    
    for i in range(1, n + 1):
        t = i
        while t > 0:
            li[t % 10] += 1
            t //= 10
    for i in range(0, 10):
        print(li[i])
    
    
    • 1

    信息

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