| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1364282 | mythofys | Pragmatism (KAISTRUN26SPRING_F) | C++20 | 119 ms | 20464 KiB |
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
set < ll > s,t;
vector < ll > adj[100005],path;
ll v[100005],k,n;
void dfs(ll node)
{
path.push_back(node);
v[node] = 1;
s.erase(node);
ll i;
if(s.size() == t.size())
{
if(s.size() >= k)
{
printf("2\n");
for(i=0;i<k;i++)
{
printf("%lld ",*s.begin());
s.erase(s.begin());
}
printf("\n");
for(i=0;i<k;i++)
{
printf("%lld ",*t.begin());
t.erase(t.begin());
}
}
else
{
printf("1\n");
for(i=0;i<n-2*k+2;i++)
{
printf("%lld ",path[i]);
}
}
t.insert(100001);
}
for(i=0;i<adj[node].size();i++)
{
if(v[adj[node][i]])continue;
dfs(adj[node][i]);
}
path.pop_back();
t.insert(node);
if(s.size() == t.size())
{
if(s.size() >= k)
{
printf("2\n");
for(i=0;i<k;i++)
{
printf("%lld ",*s.begin());
s.erase(s.begin());
}
printf("\n");
for(i=0;i<k;i++)
{
printf("%lld ",*t.begin());
t.erase(t.begin());
}
}
else
{
printf("1\n");
for(i=0;i<n-2*k+2;i++)
{
printf("%lld ",path[i]);
}
}
t.insert(100001);
}
}
int main()
{
ll i,j,m;
scanf("%lld %lld %lld",&n,&m,&k);
for(i=1;i<=n;i++)
{
s.insert(i);
}
for(i=1;i<=m;i++)
{
ll u,v;
scanf("%lld %lld",&u,&v);
adj[u].push_back(v);
adj[v].push_back(u);
}
for(i=1;i<=n;i++)
{
if(!v[i])dfs(i);
}
}컴파일 시 표준 에러 (stderr) 메시지
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
