codeforce之Bear and Two Paths

原创 2016年05月31日 11:46:34


Bearland has n cities, numbered 1 through n. Cities are connected via bidirectional roads. Each road connects two distinct cities. No two roads connect the same pair of cities.

Bear Limak was once in a city a and he wanted to go to a city b. There was no direct connection so he decided to take a long walk, visiting each city exactly once. Formally:

  • There is no road between a and b.
  • There exists a sequence (path) of n distinct cities v1, v2, ..., vn that v1 = avn = b and there is a road between vi and vi + 1 for .

On the other day, the similar thing happened. Limak wanted to travel between a city c and a city d. There is no road between them but there exists a sequence of n distinct cities u1, u2, ..., un that u1 = cun = d and there is a road between ui and ui + 1 for .

Also, Limak thinks that there are at most k roads in Bearland. He wonders whether he remembers everything correctly.

Given nk and four distinct cities abcd, can you find possible paths (v1, ..., vn) and (u1, ..., un) to satisfy all the given conditions? Find any solution or print -1 if it's impossible.


The first line of the input contains two integers n and k (4 ≤ n ≤ 1000n - 1 ≤ k ≤ 2n - 2) — the number of cities and the maximum allowed number of roads, respectively.

The second line contains four distinct integers abc and d (1 ≤ a, b, c, d ≤ n).


Print -1 if it's impossible to satisfy all the given conditions. Otherwise, print two lines with paths descriptions. The first of these two lines should contain n distinct integers v1, v2, ..., vn where v1 = a and vn = b. The second line should contain n distinct integers u1, u2, ..., unwhere u1 = c and un = d.

Two paths generate at most 2n - 2 roads: (v1, v2), (v2, v3), ..., (vn - 1, vn), (u1, u2), (u2, u3), ..., (un - 1, un). Your answer will be considered wrong if contains more than k distinct roads or any other condition breaks. Note that (x, y) and (y, x) are the same road.



同时可以画图就可以发下达到要求需要的最少的也是n + 1条路径,为了让路径最少就是要增加路径的复用才可以。

#include <bits/stdc++.h>
using namespace std;
#define Riep(n) for(int i=1;i<=n;i++)
#define Riop(n) for(int i=0;i<n;i++)
#define Rjep(n) for(int j=1;j<=n;j++)
#define Rjop(n) for(int j=0;j<n;j++)
#define mst(ss,b) memset(ss,b,sizeof(ss));
typedef long long LL;
const LL mod=1e9+7;
const double PI=acos(-1.0);
const int inf=0x3f3f3f3f;
const int N=1e5+5;
int n,k,a,b,c,d;
int vis[1005];
int main()
       printf("%d %d ",a,c);
       for(int i=1;i<=n;i++)
               printf("%d ",i);
       printf("%d %d\n",d,b);
       printf("%d %d ",c,a);
       for(int i=1;i<=n;i++)
               printf("%d ",i);
       printf("%d %d \n",b,d);


    return 0;

Codeforces 673D Bear and Two Paths【贪心】

D. Bear and Two Paths time limit per test 2 seconds memory limit per test 256 megabytes i...

Codeforces Round #351 (VK Cup 2016 Round 3, Div. 2 Edition) D. Bear and Two Paths

D. Bear and Two Paths time limit per test 2 seconds memory limit per test 256 megabytes ...

codeforce771B Bear and Different Names 贪心or思维

  • Na_OH
  • Na_OH
  • 2017年05月02日 15:24
  • 88

codeforce之 Bear and Colors

题目: Bear Limak has n colored balls, arranged in one long row. Balls are numbered 1 through n,...
  • luckyu1
  • luckyu1
  • 2016年05月31日 10:33
  • 188

【CodeForce】Codeforces Round #141 (Div. 2) B. Two Tables

第二次熬夜做题,发现这一次的阅读量好大,英语差的连题目都看不懂。。。好不容易看懂了一个,代码写了我两个小时,哎.....不解释了。 CF比赛连接 Codeforces Round #141 (Div...

two bishops on the chessboard (CodeForce 463C)

啦啦啦,先来看一看题目! Description Gargari is jealous that his friend Caisa won the game from the pr...

codeforces 36E Two Paths


Finding all paths climbing stairs in one or two steps.

This is a kind of follow up of question 70. CLimbing Stairs from Leetcode, In that question, you are...

Codeforces Round #356 (Div. 2)-A. Bear and Five Cards(模拟)

A. Bear and Five Cards time limit per test 2 seconds memory limit per test 256 megabytes...

Codeforces 573D Bear and Cavalry

Would you want to fight against bears riding horses? Me neither. Limak is a grizzly bear. He is gen...
您举报文章:codeforce之Bear and Two Paths