提交记录 16982


用户 题目 状态 得分 用时 内存 语言 代码长度
2018_Danny 2002. 【NOIP2018】旅行(加强版) Time Limit Exceeded 70 1 s 54728 KB C++ 1.81 KB
提交时间 评测时间
2021-11-18 15:00:07 2021-11-18 15:00:17
#include <bits/stdc++.h>

#define R register
#define I inline

using namespace std;

const int N = 5e5 + 5;

int n, m;
int head[N], tot;
int ans[N], newans[N], dfn, flag, banu, banv;
int buf[20], num;
int cba;

vector <int> e[N];

I int read()
{
	int ret = 0; 
	char ch = getchar();
	while (!isdigit(ch)) ch = getchar();
	while (isdigit(ch))
	{
		ret = (ret << 1) + (ret << 3) + (ch ^ 48);
		ch = getchar();
	}
	return ret;
}

I void write(int x)
{
    num = 0;
    while (x)
    {
        buf[ ++ num] = x % 10;
        x /= 10;
    }
    for (R int i = num; i; i -- )
        putchar(buf[i] + '0');
    putchar(' ');
}

void dfs(int u, int fa)
{
	if (dfn == n) return;
	newans[ ++ dfn] = u;
	if (newans[dfn] < ans[dfn]) cba = 1;
	else if (cba != 1 && newans[dfn] > ans[dfn])
	{
	    return;
	}
	for (R int i = 0; i < int(e[u].size()); i ++ )
	{
		int v = e[u][i];
		if (v == fa) continue;
		if (u == banu && v == banv) continue;
		if (v == banu && u == banv) continue;
		dfs(v, u);
	}
}

int main()
{
	n = read();
	m = read();
	int u, v;
	for (R int i = 1; i <= m; i ++ )
	{
		u = read();
		v = read();
		e[u].push_back(v);
		e[v].push_back(u);
	}
	for (R int i = 1; i <= n; i ++ )
		sort(e[i].begin(), e[i].end());
	memset(ans, 0x3f, sizeof ans);
	if (m == n - 1) 
	{
		dfs(1, 0);
		for (R int i = 1; i <= n; i ++ )
			ans[i] = newans[i];
	}
	else
	{
		for (R int i = 1; i <= n; i ++ )
			for (R int j = 0; j < int(e[i].size()); j ++ )
			{
				dfn = flag = 0;
				banu = i;
				banv = e[i][j];
				cba = -1;
				dfs(1, 0);
				if (dfn < n) continue;
				for (R int k = 1; k <= n; k ++ )
					if (ans[k] > newans[k]) 
					{
						flag = 1;
						break;
					}
					else if (ans[k] < newans[k]) break; 
				if (flag)
					for (R int k = 1; k <= n; k ++ )
						ans[k] = newans[k];
			}
	} 
	for (R int i = 1; i <= n; i ++ ) write(ans[i]);
	return 0;
} 

CompilationN/AN/ACompile OKScore: N/A

Testcase #12.271 ms13 MB + 408 KBAcceptedScore: 5

Testcase #22.27 ms13 MB + 408 KBAcceptedScore: 5

Testcase #32.278 ms13 MB + 412 KBAcceptedScore: 5

Testcase #42.282 ms13 MB + 412 KBAcceptedScore: 5

Testcase #53.14 ms13 MB + 732 KBAcceptedScore: 5

Testcase #63.087 ms13 MB + 716 KBAcceptedScore: 5

Testcase #725.777 ms19 MB + 660 KBAcceptedScore: 5

Testcase #825.971 ms18 MB + 844 KBAcceptedScore: 5

Testcase #9287.072 ms45 MB + 136 KBAcceptedScore: 5

Testcase #10291.361 ms47 MB + 252 KBAcceptedScore: 5

Testcase #11286.354 ms41 MB + 172 KBAcceptedScore: 5

Testcase #12291.648 ms43 MB + 424 KBAcceptedScore: 5

Testcase #13861.936 ms13 MB + 772 KBAcceptedScore: 5

Testcase #14749.571 ms13 MB + 804 KBAcceptedScore: 5

Testcase #151 s20 MB + 240 KBTime Limit ExceededScore: 0

Testcase #161 s20 MB + 584 KBTime Limit ExceededScore: 0

Testcase #171 s53 MB + 456 KBTime Limit ExceededScore: 0

Testcase #181 s53 MB + 456 KBTime Limit ExceededScore: 0

Testcase #191 s46 MB + 328 KBTime Limit ExceededScore: 0

Testcase #201 s50 MB + 744 KBTime Limit ExceededScore: 0


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