C语言练习题--洛谷P1012拼数

题目描述

设有 n 个正整数 a1​...an​,将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。

输入格式

第一行有一个整数,表示数字个数 n。

第二行有 n 个整数,表示给出的 n 个整数 ai​。

输出格式

一个正整数,表示最大的整数

输入输出样例

输入 #1复制

复制代码
3
13 312 343

输出 #1复制

复制代码
34331213

输入 #2复制

复制代码
4
7 13 4 246

输出 #2复制

复制代码
7424613

说明/提示

对于全部的测试点,保证 1≤n≤20,1≤ai​≤109。

NOIP1998 提高组 第二题

cs 复制代码
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int compar(const void *a,const void *b)
{
	return strcmp((char*)a,(char*)b);
}
int main()
{
	int n,i;
	scanf("%d",&n);
	char str[25][25]={'\0'};
	for(i=0;i<n;i++)
	scanf("%s",str[i]);
	qsort(str,n,sizeof(str[0]),compar);
	for(i=n-1;i>=0;i--)
	{
	if(str[i][0]==str[i-1][0])
	{
	char c[25]={'\0'},a[25]={'\0'},b[25]={'\0'};
	strcpy(b,str[i-1]);
	strcpy(a,str[i]);
	if(strcmp(strcat(b,a),strcat(a,b))>0)
	{
	strcpy(c,str[i-1]);
	strcpy(str[i-1],str[i]);
	strcpy(str[i],c);	
	}	
	}	
	}
	for(i=n-1;i>=0;i--)
	printf("%s",str[i]);
	return 0;
}

利用qsort函数对二维字符串排序

相关推荐
周杰偷奶茶5 分钟前
【Java】运算符指南
java·开发语言
P.D.Wei11 分钟前
[Leetcode 1614] 括号的最大嵌套深度
算法·leetcode·职场和发展
2601_9669496515 分钟前
量化回测中分钟数据应该如何保存?从文件到数据仓库的工程化设计
开发语言·python·pandas·量化交易·股票数据·quantdash
Zhou14113629 分钟前
SpringMVC_02_注解开发实战
开发语言·windows·python
红姐跨境书36 分钟前
AI 的底层逻辑:从数据、算法到智能的本质
人工智能·算法
繁华的地方不一定留下你的脚印36 分钟前
C++ 算法与 ranges:用 find_if、transform 写清数据处理意图
开发语言·c++·算法
青山是哪个青山38 分钟前
LeetCode 64:最小路径和
算法
blxr_40 分钟前
力扣hot100寻找重复数https://leetcode.cn/problems/find-the-duplicate-number/
算法·leetcode·职场和发展
政企项目老覃41 分钟前
金融医疗数据脱敏与隐私计算:从字段打码到联邦建模的落地复盘
程序人生·算法·金融·数据分析
霸道流氓气质1 小时前
Mermaid 图表完全指南:从文本语法到LangGraph4j工作流可视化实战
开发语言·python