提交记录 6430


用户 题目 状态 得分 用时 内存 语言 代码长度
zhangjingyu 1001. 测测你的排序 Runtime Error 0 528.901 ms 1638348 KB C++ 1.02 KB
提交时间 评测时间
2018-10-10 17:27:37 2020-08-01 00:44:01
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct list
{
	unsigned int data;
	list* next;
}head;

struct aa
{
	list* head;
	list* tail;
}ans[65536];

unsigned findpos(unsigned num,unsigned jishu,int g)
{
	if(g == 0)
		return num&jishu;
	return num>>16;
}
int do_once(unsigned *a,int n,unsigned jishu,int g)
{
	int size = sizeof(list);
	list *p = head.next;
	memset(ans,0,sizeof(ans));
	for(int i = 0; i < n; i ++)
	{
		unsigned pos = findpos(a[i],jishu,g);
	//	unsigned pos = jishu&a[i];
		list *node = (list*)malloc(size);
		node->data = a[i];
		node->next = 0;
		
		if(ans[pos].head == 0)
		{
			ans[pos].head = node;
			ans[pos].tail = node;
			continue;
		}
		
		ans[pos].tail->next = node;
		ans[pos].tail = node;
	}
	int wp=0;
	for(int i = 0; i < 65536; i ++)
	{
		list *p = ans[i].head;
		list *now;
		while(p)
		{
			//printf("%u ",p->data);
			a[wp++] = p->data;
			now = p;
			p = p->next;
			free(now);
		}
		
	}
}

void sort(unsigned *a, int n){
	unsigned jishu = 65535;
	do_once(a,n,jishu,0);
	do_once(a,n,jishu,1);
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #1528.901 ms1599 MB + 972 KBRuntime ErrorScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-04-10 03:10:23 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠