zoukankan      html  css  js  c++  java
  • Codeforces Round #310 (Div. 2)

    A. Case of the Zeros and Ones

    Andrewid 允许同时删除一个仅由'0','1'组成的字符串中的'0','1',问你Andrewid 最终能得到一个最短的字符串的长度是多少。

    ans = min(cnt('0'), cnt('1'));

    B. Case of Fake Numbers

    Andrewid有一排齿轮,相邻的齿轮靠在一起,其旋转方向相反。每次Andrewid能拨动齿轮转动一次,齿轮上有0~n-1的值,其中有个 active的值表示当前齿轮的值a[i],现在给出一排n个齿轮的当前值,问你是否能够转到n个齿轮按顺序排成(0, 1, 2, ...., n-1);

    k = n-a[i] 得出总共要转多少下,(n + a[i] + flag * k) % n == i 判断每个位置是否转到真确位置。

    flag表示当前转的方向顺时针为1,逆时针为-1。

    C. Case of Matryoshkas

    Andrewid 有n个娃娃,标号为1~n,小的标号的娃娃可以套在大的里面,每一秒可以把一个娃娃套在另一个娃娃上,也可以把一个娃娃拿出来,现在套好了k堆,要你用最小的时间吧这n个娃娃套在一起。

    从1开始连续地数直到s后不连续了, 计算公式 (n-s) * 2 - (k-1) ,也就是说剩下的(n-s)个娃娃都要从原来的套好的堆中拆下来,并套回以1为开始的堆中。这样有两步操作,但是每堆中m个娃娃,拆完m-1个后剩下的那个便不用再拆一次了,于是减去(k-1).

  • 相关阅读:
    CB2010连接WORD
    WIN7下的MODI
    视频预览1
    上下文工具栏(ContextTab)
    多功能便携式拉杆箱电源系统
    Firefox 内存占用问题
    「新闻」Google Science Fair
    2011521
    「电视剧」永远的忠诚
    2011429
  • 原文地址:https://www.cnblogs.com/xuelanghu/p/4608261.html
Copyright © 2011-2022 走看看