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 分钟前
《Python红队攻防零基础脚本编写:进阶篇(一)》
开发语言·python·安全·web安全·网络安全·系统安全
星释6 分钟前
Rust 练习册 67:自定义集合与数据结构实现
数据结构·算法·rust
爱码小白7 分钟前
PyQt5 QTimer总结
开发语言·qt
A***279512 分钟前
Kotlin反射机制
android·开发语言·kotlin
E***q53917 分钟前
C++内存对齐优化
开发语言·c++
q***d17338 分钟前
Kotlin在后台服务中的框架
android·开发语言·kotlin
周杰伦fans1 小时前
C# 中的 `Hashtable`
开发语言·c#
习习.y1 小时前
关于python中的面向对象
开发语言·python
lingggggaaaa1 小时前
免杀对抗——C2远控篇&PowerShell&有无文件落地&C#参数调用&绕AMSI&ETW&去混淆特征
c语言·开发语言·笔记·学习·安全·microsoft·c#
口袋物联1 小时前
设计模式之建造者模式在 C 语言中的应用(含 Linux 内核实例)
c语言·设计模式·建造者模式