zoukankan      html  css  js  c++  java
  • Codeforces Round #376A (div2)

    Night at the Museum

    题意:

    有一个转盘,26个英文字母均匀分布在转盘边缘,转针初始位置在字母a,每次只能转动到相邻的字母,然后输入一个由26个字母组成的字符串(最长100),不复位地依次转动到相应的字母位置,问:一共需要转多少次?编程实现。

    Input:

      输入一个字符串,最长100,由26个英文字母组成。

    Output:

      输出需要转动的次数(整数)。

    解题思想:

    由于一圈字母中“..za..”段是不连续的,所以需要分情况讨论,我是这么分的:

    以转针所指字母pointer和圆心连线为轴,轴右侧(即<pointer,pointer+13或pointer-13>),除了转针指向‘a’时,其它时刻轴两侧肯定有一侧字母连续  另一侧字母无法连续(包含"za"串) 。

    轴左右指的是将轴竖直放置,转针一头在上,此时的左右侧 。

    不难看出pointer以‘n’为界限,小于‘n’时不连续段在轴左侧,大于‘n’时不连续段在轴右侧。如下图:

    最后代码:

     C++ Code

    结果测试:

  • 相关阅读:
    python面试题之生成器迭代器
    python之初识函数二
    Python之初识函数一
    Python初识之文件操作
    python初识三
    python初识二
    python初识一
    2.15.5.menuconfig的使用和演示
    2.15.4.内核的配置原理1
    2.15.3.内核配置和编译体验
  • 原文地址:https://www.cnblogs.com/xieweikai/p/6817688.html
Copyright © 2011-2022 走看看