2 条题解

  • 3
    @ 2023-1-21 16:55:10
    #include<bits/stdc++.h>
    using namespace std;
    /*
    短除法拆出读入的n个数的每一位,存入数组,排序
    x代表读入的每个数
    k代表拆到a数组的每个数的下标 
    */
    int a[4010],n,x,k = 0;
    int main()
    {
    	cin >> n;
    	//读入n个数
    	for(int i = 1; i <= n; i++){
    		cin >> x;
    		//将x的每一位存入数组
    		while( x != 0){
    			k++;//数组长度+1
    			//注意:此处a数组下标从1开始用
    			a[k] = x % 10;//拆出x的个位
    			x /= 10; 
    		} 
    	} 
    	//a数组,存储了k个一位数
    	sort(a+1,a+1+k);
    	reverse(a+1,a+k+1);
    	//输出
    	for(int i = 1; i <= k; i++){
    		cout << a[i];
    	} 
    	return 0;
    }
    
    
    
    • 0
      @ 2023-2-12 20:11:28
      #include <bits/stdc++.h>
      using namespace std;
      int a[4010],n,x,d;
      int main()
      {
      	cin >> n;
      	for(int i=1;i<=n;i++)
          {
      		cin >> x;
      		while(x!=0)
              {
      			d++;
      			a[d] = x % 10;
      			x /= 10; 
      		} 
      	} 
      	sort(a+1,a+1+d);
      	for(int i=d;i>=1;i--)
          {
      		cout << a[i];
      	} 
      }
      
      • 1

      信息

      ID
      455
      时间
      1000ms
      内存
      32MiB
      难度
      1
      标签
      递交数
      38
      已通过
      30
      上传者