zoukankan      html  css  js  c++  java
  • codeforces B. Xenia and Spies 解题报告

    题目链接:http://codeforces.com/problemset/problem/342/B

    题目意思:有n个spy,编号从1~n,从左到右排列。现在的任务是,spy s要把信息传递到spy f,但必须要满足:当spy li ~ spy ri 被观看时,这一段spy不能传递信息。

         要注意的是,step数(也就是ti)不一定是按顺序排列下来的,它有可能与上一行的step相差好几轮。此时,这好几轮中,spy s 是可以继续往spy f的方向传递信息的,直到移动完这好几轮的数目为止。除此,有可能m未完全输出完,spy s已经把信息传到spy f 中了;还有编号为 s 的spy编号有可能比spy f的编号小, 这些都是需要考虑的。

         模拟题,考的就是细心,还有考虑周全!!!

        

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstdlib>
     4 using namespace std;
     5 
     6 int main()
     7 {
     8     int n, m, s, f;
     9     while (scanf("%d%d%d%d", &n, &m, &s, &f) != EOF)
    10     {
    11         int move = (s > f ? -1 : 1);   // 记录是往左移还是往右移
    12         int current, l, r;
    13         int next = 1;  // next的设置很重要,它关乎到当前step和上一行的step间隔多少来处理消息的移动
    14         current = 0;
    15         while (s != f)
    16         {
    17             if (current < next && m > 0)
    18             {
    19                 scanf("%d%d%d", &current, &l, &r);
    20                 m--;
    21             }
    22             if (current == next && ((s >= l && s <= r) || s + move >= l && s + move <= r))  // "||"后面的条件容易遗忘,它表示当移动一步后是否处于被看的序列中,如果是则不能移动
    23                 printf("X");
    24             else 
    25             {
    26                 printf("%c", s > f ? 'L' : 'R'); 
    27                 s += move;
    28         //        printf("s = %d\n", s);
    29             }
    30             next++;
    31     //        printf("\ncurrent = %d, next = %d\n", current, next);
    32         }
    33         while (m--)   // 未到达m行,消息已经成功传递到spy f中,此时要继续执行到m行为止
    34             scanf("%d%d%d", &current, &l, &r);
    35         printf("\n");
    36     }
    37     return 0;
    38 }
  • 相关阅读:
    三、录制脚本Badboy录制脚本1
    三、录制脚本术语
    二、搭建Jmeter环境以及环境变量
    三、录制脚本Jmeter录制脚本2
    一、JMeter相关术语
    MySQL存储引擎
    创建线程CreateThread()
    关于category
    关于异常
    UIView和UIWindow
  • 原文地址:https://www.cnblogs.com/windysai/p/3351387.html
Copyright © 2011-2022 走看看