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

    传送门

    A.BowWow and the Timetable(思维)

    •题意

      在 Saint Petersburg 城市,每天有 T ($T leq 2_100$)分钟;

      这个城市有一个车站,该车站只在第 $4^0,4^1,4^2,cdots$ 分钟有车经过;

      问,如果在 S 分钟到达车站,会错过几辆车?

      其中,S 是按照二进制的形式给出;

    •题解一(BigInteger)

      用 Java 中的大数处理这个题,就是先将 S 转化成十进制,在转化成 4 的幂的形式;

      属于无脑操作,细节看代码;

    •Code

       CodeForces1204A.java

    •题解二(二进制转四进制)

      $2^k=4^{lfloor{frac{k}{2}} floor}$;

      且有 $2^0+2^1+2^2+cdots +2^k < 2^{k+1}$

      假设输入的二进制数 S 存放在字符数组中,并且 |S| = k,即最高位为 $2_{k-1}$;

      如果 k-1 为奇数,即 k 为偶数,那么  $4^{lfloor{frac{k-1}{2}} floor} < S < 4^{lfloor{frac{k}{2}} floor}$,易得共错过 $frac{k}{2}$ 辆车;

      如果 k-1 为偶数,那么,$S ge 4^{lfloor{frac{k-1}{2}} floor}$,此时需要判断 $S$ 是否等于 $4^{lfloor{frac{k-1}{2}} floor}$:

        如果 '>',那么答案为 $frac{k-1}{2}+1$;

        反之,答案为 $frac{k-1}{2}$,即判断第 $4^{lfloor{frac{k-1}{2}} floor}$ 分钟的车是否会错过;

    •Code

      CodeForces1204A.cpp

  • 相关阅读:
    listview右边显示 abcd快速选择
    显示密码
    欢迎界面动画
    web get Post测试
    使用MultiDexApplication
    获取当前运行的Activity信息
    MFC得到运行程序路径
    构建之法阅读笔记01
    个人作业1:随机生成四则运算
    软件工程第一步
  • 原文地址:https://www.cnblogs.com/violet-acmer/p/11515160.html
Copyright © 2011-2022 走看看