zoukankan      html  css  js  c++  java
  • CF1404D

    CF1404D - Game of Pairs

    题目大意

    两个人Van游戏,

    第一个人对于(1,2,cdots,2n)分成(n)

    第二个人尝试从每组中选一个数,使得选出数的和是(2n)的倍数

    你选一个人Van,然后赢了交互器


    分析

    考虑从一个(mathbb{Naive})的构造开始:

    分成(n)组,每组都是((i,n+i))

    为什么这么构造?因为每组两个数(mod n)都相同

    那么最终选出的和(Summod n=frac{n(n+1)}{2})

    观察到,在(n)为偶数时,(Sum mod n=frac{n}{2} e 0),此时必然无解

    然后我没过脑子随机化艹出了n为奇数的方案,但是没事下面有确定解法

    (n)为奇数时,我们只需要类似找到一组(mod n=0,1,2,cdots ,n-1)的方案

    此时必然满足(Summod n=0)

    这只需要对于给出的每组((a_i,b_i)),对于(a_imod n,b_imod n)连一条边

    然后在最终的置换环上进行决策即可


    然而我们需要(Summod 2n=0)

    (frac{(2n+1)2n}{2}=n(2n+1)mod 2n=n),故如果找到的(Summod 2n=n),取当前方案的补集即可

  • 相关阅读:
    进程Queue
    进程ID
    多进程
    queue 生产者、清费者
    让静态页面显示用户登录状态
    apache2.2 + tomcat6 整合以及集群配置整理
    linux安装rzsz
    http_load
    用Ant实现Java项目的自动构建和部署
    Openfire:安装指南
  • 原文地址:https://www.cnblogs.com/chasedeath/p/14819616.html
Copyright © 2011-2022 走看看