ZOJ-1188「建议收藏」

ZOJ-1188「建议收藏」也很水,直接统计权值然后排序即可

大家好,又见面了,我是你们的朋友全栈君。

也很水,直接统计权值然后排序即可

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

struct DNA
{
	char s[51];
	int sort;
	int index;
};

static void calc(struct DNA *p)
{
	char *s = p->s;
	int i, j, c, len = strlen(s);
	p->sort = 0;
	for (i = 0; i < len; i++)
	{
		c = s[i];
		for (j = i + 1; j < len; j++)
			if (c > s[j])
				p->sort++;
	}
}

static int cmp(const void *p1, const void *p2)
{
	struct DNA *d1 = (struct DNA *) p1;
	struct DNA *d2 = (struct DNA *) p2;
	if (d1->sort != d2->sort)
		return d1->sort - d2->sort;
	else
		return d1->index - d2->index;
}

int main()
{
	int t, N;
	scanf("%d", &N);
	struct DNA *array = malloc(100 * sizeof(struct DNA));
	for (t = 0; t < N; t++)
	{
		if (t)
			putchar('\n');
		int n, m;
		scanf("%d %d", &n, &m);
		getchar();
		int i;
		for (i = 0; i < m; i++)
		{
			gets(array[i].s);
			array[i].index = i;
			calc(array + i);
		}
		qsort(array, m, sizeof(struct DNA), cmp);
		for (i = 0; i < m; i++)
			puts(array[i].s);
	}
	free(array);
	return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158244.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • layui表单提交数据_vue表单值无变化不让提交

    layui表单提交数据_vue表单值无变化不让提交layui标准的提交<formclass=”layui-form”action=””><divclass=”layui-form-item”><divclass=”layui-input-block”><buttonclass=”layui-btn”lay-submitlay-f…

    2022年10月7日
    3
  • VS导入没有.sln文件的项目[通俗易懂]

    VS导入没有.sln文件的项目[通俗易懂]关于在VS中导入没有.sln文件的.net项目     导入的是一个网站项目,步骤是先创建一个空白的解决方案,再在解决方案中点击右键,添加一个现有网站项目,再选择相应的项目文件,即可进行网站的运行。如果在运行过程中出现xxx.cs文件中不存在该类型的命名或命名空间,那么极有可能是相应的.net框架版本不一致导致,所以在点击该项目的属性页中调整相应的框架版本,即可进行相应的网站项目运行。…

    2022年5月25日
    116
  • Android 开机动画源码分析

    Android 开机动画源码分析Android系统在启动SystemServer进程时,通过两个阶段来启动系统所有服务,在第一阶段启动本地服务,如SurfaceFlinger,SensorService等,在第二阶段则启动一系列的Java服务。开机动画是在什么时候启动的呢?通过查看源码,Android开机动画是在启动SurfaceFlinger服务时启动的。SystemServer的main函数首先调用init1来启动本地服务,

    2022年5月15日
    37
  • pycharm2021.11.3激活码(JetBrains全家桶)[通俗易懂]

    (pycharm2021.11.3激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
    64
  • Oracle间隔分区

    Oracle间隔分区

    2021年8月28日
    119
  • goland激活码(破解版激活)

    goland激活码(破解版激活),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    277

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号