zoukankan      html  css  js  c++  java
  • [题解]CodeForces#290(div1)

    开题之后发现做过div2的QwQ

    A Fox And Names

    B Fox And Jumping

    题目描述

    你希望遍历一个长度为无穷的环

    (n)种卡片,你可以花费(c_i)的代价购买第(i)种卡片并可以无限次使用,每一次可以让你顺/逆时针跳(a_i)步,问是否存在一种方案,使得你可以遍历所有点,如果有,输出最小代价

    (1leq n leq 300,1leq a_ileq 10^9,1leq c_ileq 10^5)

    分析

    我幼小呀

    首先可以把问题简化为是否存在一种方案,使得(sum a_i*x_i=1),其中,(a_i)是选了的那些卡片,(x_i)为任意整数

    因为如果可以向某一个方向走1步,那么就可以遍历整个环,并且如果要遍历整个环,就必然要有一种方案可以向某个方向走一步

    好了然后根据裴蜀定理的扩展,所有(a_i)(gcd)要为(1),那么直接(dp)就可以了

    发现gcd的个数不会太多,可以用个map

    C Fox And Dinner

    题目描述

    给出(n)([2,100])的数,问能否把他们分成若干个大于等于3的环,使得任意相邻的两个数之和为质数

    (1leq n leq 100)

    分析

    由于数值大于2,所以和为质数的两个数必然是一奇一偶。把所有的数分成奇偶两列,每一个数左右都有两个奇偶性和自己不同的数,那么从(S)到每个奇数点连(2)的边,从每个偶数点到 (T)(2)的边,跑网络流就OK啦

  • 相关阅读:
    堆栈详解
    结构体内存对齐
    const限定符
    硬盘及其分区(0819整理)
    Android编译环境搭建(0818-0819)
    wordpress导入模板数据
    git新建仓库
    android 镜像源
    js 获取浏览器可视窗口大小,滚动条高度
    jquery 获取浏览器可视窗口大小,滚动条高度
  • 原文地址:https://www.cnblogs.com/SCL123/p/11807207.html
Copyright © 2011-2022 走看看