zoukankan      html  css  js  c++  java
  • 【思维】二分图构造——eoj 联想杯F 好题

    题意: 把 n 个数分成若干组,组内互质,问最少要分几组。题目给 了一个贪心的假算法,你需要构造一组输入和对应的解使得你分的 组数恰好比贪心的少 k ,不要求你分的也是最少的 

    数组a不能有重复元素的解法

    给定数组A,要求将A分最少的组,每组内的元素互质
    有一个假算法,枚举A[1..n],如果没有可加入的组就新建一个组,反之加入那个组
    构造一组数据使得该算法错误 
    
    构造:令每个数都对应一个顶点,如果两个点u,v不互质,
            就在这两个点之间连接一条边,边权是gcd(u,v) 
    问题就转化成了构造一张图,按假算法的染色方案是x种颜色,但是存在一种x-k的染色方案
        
    用二分图的性质来构造,肯定存在一种染色数是2的方案(二分图左右两侧) 
    于是要构造一种连边的方案,让假算法的染色方案结果是2+k 
        
    由于k=7,所以我们只要构造出染色是9的情况就行
    
    构造出图后,给每条边权都赋值为一个不同的质数,然后点权为所有和它相连的边权乘积

    当然这题没有这个限制(据说出题人(忘加了) ,所以就是很简单的把答案复读k次就行。。

  • 相关阅读:
    BZOJ 2876 骑行川藏
    BZOJ 2875 随机数生成器
    DT_修改注册项
    ip001
    ip
    阿里大鱼 阿里云api
    JS_全
    destoon框架二次开发【整理】
    destoon_笔记
    栏目class导航
  • 原文地址:https://www.cnblogs.com/zsben991126/p/13028696.html
Copyright © 2011-2022 走看看