【题目描述】

有一根尺子,长度L<=200000,在上面有N(N <= 70000,N < L)只蚂蚁,且没有两只蚂蚁初始位置相同。每只蚂蚁有一个初始方向(左或者右),且它们会爬行,速度都是每秒一个长度单位。当它们碰到另外一个蚂蚁或者尺子的边缘时,它们会立即改变移动的方向(即反向)。
  给定尺子的长度,蚂蚁的只数,以及所有蚂蚁初始的位置和方向。要你求第T秒时每只蚂蚁的位置(1<=T<=1000000)。

【输入格式】

第一行两个整数L和T。 
  第二行一个整数N,表示蚂蚁的只数。

  接下来的每行由两部分组成。第一部分是一个整数,表示该蚂蚁的初始位置。第二部分是一个字母,表示初始方向:D表示向右,L表示向左。两部分中间空格。

【输出格式】

N个整数,表示每只蚂蚁的最终位置。无需按照蚂蚁的原先编号输出,只要按照最终位置坐标递增(非降)的顺序输出坐标即可。

【样例输入】                                                【样例输出】

3 5                                                                                              0

1 D

模拟,注意细节即可。

#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cstring>
#include<queue>
#include<algorithm>
using namespace std;
int l,t,n;
struct que
{int x;char towards;
}a[70005];
bool cmp(que a,que b)
{return a.x<=b.x;
}
int main()
{scanf("%d%d%d",&l,&t,&n);for(int i=1;i<=n;i++){scanf("%d %c",&a[i].x,&a[i].towards);if(a[i].towards=='D'){a[i].x+=t;a[i].x%=2*l;if(a[i].x>=l){a[i].x=2*l-a[i].x;}}else{if(t>=a[i].x){a[i].x=t-a[i].x;a[i].x%=2*l;if(a[i].x>=l){a[i].x=2*l-a[i].x;}}else{a[i].x=a[i].x-t;}}}sort(a+1,a+n+1,cmp);for(int i=1;i<=n;i++) printf("%d ",a[i].x);
}

【模拟】【蚂蚁移动】相关推荐

  1. 1、模拟蚂蚁借呗—利息计算

    模拟蚂蚁借呗-利息计算 程序的源代码如下: /*2017年6月11日10:15:49功能:计算蚂蚁借呗的利息缺点:本程序没有判断年份是否为闰年借款当日的时间需要手动输入,年份不能以特定的格式显示没有还 ...

  2. 模拟蚂蚁森林的能量产生过程

    模拟蚂蚁森林的能量产生过程 for i in range(100):print(""" 能量查询请输入能量来源!退出程序请输入0 能量来源如下: 生活缴费.行走捐.共享单 ...

  3. python模拟蚂蚁森林能量产生过程代码_用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了...

    1. 概述 提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢? 如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么. 但如果你是蚂蚁森林重度用户,遇到能量被偷 .. ...

  4. 模拟蚂蚁森林小球收集能量方法

    想要效果,点击前 点击后 技术栈:vue js HTML: <div class="main_contain"><div v-for="(item,in ...

  5. Android模拟蚂蚁爬动画,Android 自定义View 仿蚂蚁信用分析(正多边形)

    上一篇 我实现了正多边形的绘制,不过是用比较取巧的方式,仅能绘制出多边形,而不知道任意顶点坐标,没法再在顶点外绘制图片.文字... 支付宝芝麻信用分-分析中,有个正五边形,各顶点外还有图片与文字,想绘 ...

  6. java兰顿蚂蚁解题思路_程序员面试金典 - 面试题 16.22. 兰顿蚂蚁(deque模拟)

    1. 题目 一只蚂蚁坐在由白色和黑色方格构成的无限网格上. 开始时,网格全白,蚂蚁面向右侧. 每行走一步,蚂蚁执行以下操作. (1) 如果在白色方格上,则翻转方格的颜色,向右(顺时针)转 90 度,并 ...

  7. 程序员面试金典 - 面试题 16.22. 兰顿蚂蚁(deque模拟)

    1. 题目 一只蚂蚁坐在由白色和黑色方格构成的无限网格上. 开始时,网格全白,蚂蚁面向右侧. 每行走一步,蚂蚁执行以下操作. (1) 如果在白色方格上,则翻转方格的颜色,向右(顺时针)转 90 度,并 ...

  8. 2014年第五届蓝桥杯 - 省赛 - C/C++大学A组 - G. 蚂蚁感冒

    标题:蚂蚁感冒 长100厘米的细长直杆子上有n只蚂蚁.它们的头有的朝左,有的朝右. 每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒. 当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行. 这些蚂蚁中,有 ...

  9. Matlab实现蚂蚁群算法

    蚂蚁群算法是一种模拟自然界中蚂蚁行为的优化算法,其具有全局搜索能力和适应性强的特点,被广泛应用于组合优化问题中.本文将介绍如何使用Matlab实现蚂蚁群算法. 文章目录 1. 蚂蚁群算法原理 2. M ...

  10. 【菜鸟算题】兰顿蚂蚁

    题目 兰顿蚂蚁,是于1986年,由克里斯·兰顿提出来的,属于细胞自动机的一种. 平面上的正方形格子被填上黑色或白色.在其中一格正方形内有一只"蚂蚁". 蚂蚁的头部朝向为:上下左右其 ...

最新文章

  1. 请教如何改善C#中socket通信机客户端程序的健壮性
  2. 比Segway轻便的机器人溜冰鞋
  3. 开源 java CMS - FreeCMS2.3 会员组管理
  4. 最新综述:对话系统之用户模拟器
  5. 一致性 Hash 算法学习(分布式或均衡算法)
  6. ubuntu 12.04下 eclipse的安装
  7. LINUX2.4.x网络安全框架
  8. 《并行计算的编程模型》一1.4 数据类型
  9. linux shell加密压缩,linux的shell指令进行压缩或者解压缩
  10. @autowired注解注入为null_Spring @Autowired 注解自动注入流程是怎么样?
  11. 高性能mysql 小查询_高性能MySQL06-查询优化(慢查询)
  12. python import system_[Python Basics]引用系统(The Import System)
  13. java面向对象实现表达式计算,java面向对象课程设计-数学表达式计算器
  14. Unity Drawcall、渲染顺序、打包图集、特效清理、代码优化
  15. cocos2dx 在win32打开黑色命令行
  16. lamp兄弟连java_LAMP兄弟连李明老师讲Linux视频教程下载
  17. numpy和pandas的参考手册
  18. 万字深度报告丨数据中心投资价值全解析
  19. 苹果电脑系统如何设置成中文
  20. 学习三部曲:WHAT、HOW、WHY

热门文章

  1. 网件交换机基本配置命令盘点
  2. debian 更新源binary-armhf错误
  3. 漫步者蓝牙耳机驱动_性价比耳机推荐:双重降噪真无线蓝牙耳机漫步者lollipods...
  4. leetcode(js)-每日一练之 矩阵置零 题库编号 73
  5. window.open被浏览器拦截的问题(附解决方案)
  6. 数据仓库和数据集市的区别与联系
  7. 独立游戏开发者游戏素材网站推荐
  8. android动态图片适配,Android适配利用webview加载后图片显示过大的问题解决
  9. 磁敏感加权成像(SWI):技术要点和临床神经学应用
  10. 【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息