zoukankan      html  css  js  c++  java
  • CodeForces 22C System Administrator

    把v和2结点交换,

    1和v连,其它点和v之间能够互相连。


    #include <iostream>
    #include <cstdlib>
    #include <cstring>
    #include <string>
    #include <cstdio>
    #include <cmath>
    #include <algorithm>
    using namespace std;
    
    int n,m,v,flag,i,cnt,j;
    
    int main()
    {
        while(~scanf("%d%d%d",&n,&m,&v))
        {
            flag=0;
            if((n-1)*(n-2)/2+1<m) flag=1;
            if(m<n-1) flag=1;
            if(flag)
            {
                printf("-1
    ");
                continue;
            }
            cnt=n-1;
            for(i=1;i<n;i++)
            {
                if(i==2) printf("%d ",v);
                else if(i==v) printf("%d ",2);
                else printf("%d ",i);
                if(i+1==2) printf("%d
    ",v);
                else if(i+1==v) printf("%d
    ",2);
                else printf("%d
    ",i+1);
            }
            for(i=2;i<n&&cnt!=m;i++)
            {
                for(j=i+2;j<=n&&cnt!=m;j++)
                {
                    cnt++;
                    if(i==2) printf("%d ",v);
                    else if(i==v) printf("%d ",2);
                    else printf("%d ",i);
                    if(j==2) printf("%d
    ",v);
                    else if(j==v) printf("%d
    ",2);
                    else printf("%d
    ",j);
                }
            }
        }
        return 0;
    }
    


  • 相关阅读:
    Java面向对象编程之异常处理机制
    LinkedList链式集合
    Java之反射机制
    适配器模式
    QuickHit
    Java之单例模式
    Java面向对象之接口
    多线程
    线程同步
    试题分析
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4060309.html
Copyright © 2011-2022 走看看