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函数对二维字符串排序

相关推荐
一只小松许️7 分钟前
Rust泛型与特性
java·开发语言·rust
星星火柴9361 小时前
数据结构:哈希表 | C++中的set与map
数据结构·c++·笔记·算法·链表·哈希算法·散列表
与己斗其乐无穷2 小时前
刷题记录(3)C语言中的字符
c语言·学习
搬砖工程师Cola2 小时前
<C#>在 C# .NET 6 中,使用IWebHostEnvironment获取Web应用程序的运行信息。
开发语言·c#·.net
CS创新实验室3 小时前
数据结构:最小生成树的普里姆算法和克鲁斯卡尔算法
数据结构·算法·图论·计算机考研
八了个戒4 小时前
「数据可视化 D3系列」入门第三章:深入理解 Update-Enter-Exit 模式
开发语言·前端·javascript·数据可视化
失去妙妙屋的米奇4 小时前
matplotlib数据展示
开发语言·图像处理·python·计算机视觉·matplotlib
夏天的阳光吖4 小时前
C++蓝桥杯实训篇(四)
开发语言·c++·蓝桥杯
angushine5 小时前
Gateway获取下游最终响应码
java·开发语言·gateway
西贝爱学习5 小时前
数据结构:C语言版严蔚敏和解析介绍,附pdf
c语言·开发语言·数据结构