来源:JZOJ

题目描述

众所周知,现代初中生是很有礼貌的社交型学生:每当两个初中生分离后又相遇的时候,它们用“你好!”友好地相互打招呼,馨馨和她的朋友瑶瑶在学校的校园里的一条长长的羊肠小路上散步。

为了便于理解,我们可以把这条羊肠小路看作是一个:一维数轴。 馨馨和瑶瑶都从原点出发,而且她们在散步的这段时间内速度一样。

请根据两个学生各自的散步行动,算出她们互相之间打招呼“你好!”的次数。 经过一段时间之后,她们两个可以在不同的地点停止, 时间有限,两人都不能行走超过 1 , 000 , 000 1,000,000 1,000,000 的单位时间。

解题思路

  • 这是一道纯模拟,主要是预处理,用两个记录单位时间 x x x 馨馨和瑶瑶所在的地点;
  • 然后一重循环枚举单位时间,然后判断,如果当前单位时间馨馨和瑶瑶所在点相同而前一单位时间馨馨和瑶瑶所在点不同(因为如果两个人同步同方向行走的时候,只能视为1次相遇);
  • 有一个细节需要注意一下:当一个人停止后,每个时刻她所在的地点都是停止时的位置,需要把停止时刻到另一个人的停止时刻(假设另一个人的停止时刻更加靠后)的位置数组补全;

美妙的Code

#include <bits/stdc++.h>
using namespace std;
int a[1000010],b[1000010];
int main()
{freopen("2019t2.in","r",stdin);freopen("2019t2.out","w",stdout);int n,m;scanf("%d %d",&n,&m);int x=0,y=0,tot1=0,tot2=0,sum1=0,sum2=0;for (int i=1;i<=n;i++){int Len;char ch;scanf("%d %c",&Len,&ch);sum1+=Len;if (ch=='L')for (int j=1;j<=Len;j++) x--,a[++tot1]=x;  //往左走elseif (ch=='R')for (int j=1;j<=Len;j++) x++,a[++tot1]=x;  //往右走}for (int i=1;i<=m;i++){int Len;char ch;scanf("%d %c",&Len,&ch);sum2+=Len;if (ch=='L')for (int j=1;j<=Len;j++) y--,b[++tot2]=y;  //往左走elseif (ch=='R')for (int j=1;j<=Len;j++) y++,b[++tot2]=y;  //往右走}int maxt=0;if (sum1<sum2)  //如果第二个人停止时刻更靠后{maxt=sum2;for (int i=sum1+1;i<=sum2;i++) a[++tot1]=x;  //补全位置数组}elseif (sum1>sum2)  //第一个人停止时刻更靠后{maxt=sum1;for (int i=sum2+1;i<=sum1;i++) b[++tot2]=y;  补全位置数组}int ans=0;for (int i=1;i<=maxt;i++)if (a[i]==b[i] && a[i-1]!=b[i-1])  //两个人同步同方向行走的时候,只能视为1次相遇{ans++;}printf("%d",ans);  //打印return 0;
}

【2020.2.7 练习赛】 T1-瑶馨相遇-[2019河南省赛初中组](模拟)相关推荐

  1. 计算机网络与多媒体试卷,2020年9月网络教育统考《计算机应用基础》多媒体技术模拟题试卷2...

    2020年9月网络教育统考<计算机应用基础>多媒体技术模拟题试卷2 11.下列不属于多媒体范畴的是______. A.交互式视频游戏 B.交互式多媒体教学 C.有声图书 D.普通电视 答案 ...

  2. 2020美容师(初级)考试题库及美容师(初级)模拟考试

    题库来源:安全生产模拟考试一点通公众号小程序 2020美容师(初级)考试题库及美容师(初级)模拟考试,包含美容师(初级)考试题库答案解析及美容师(初级)模拟考试练习.由安全生产模拟考试一点通公众号结合 ...

  3. 2020电工(初级)考试题库及电工(初级)模拟考试题

    题库来源:安全生产模拟考试一点通公众号小程序 2020电工(初级)考试题库及电工(初级)模拟考试题,包含电工(初级)考试题库答案解析及电工(初级)模拟考试题练习.由安全生产模拟考试一点通公众号结合国家 ...

  4. 2020煤矿安全监测监控考试题及煤矿安全监测监控复审模拟考试

    题库来源:安全生产模拟考试一点通公众号小程序 2020煤矿安全监测监控考试题及煤矿安全监测监控复审模拟考试,包含煤矿安全监测监控考试题答案解析及煤矿安全监测监控复审模拟考试练习.由安全生产模拟考试一点 ...

  5. 2020煤矿安全监测监控证考试及煤矿安全监测监控模拟考试题库

    题库来源:安全生产模拟考试一点通公众号小程序 2020煤矿安全监测监控证考试及煤矿安全监测监控模拟考试题库,包含煤矿安全监测监控证考试答案解析及煤矿安全监测监控模拟考试题库练习.由安全生产模拟考试一点 ...

  6. 计算机统考多媒体技术操作题,2020年9月网络教育统考《计算机应用基础》多媒体技术模拟题试卷操作题...

    2020年9月网络教育统考<计算机应用基础>多媒体技术模拟题试卷操作题 操作题: 1.在考生文件夹中,有一个"Test.rar"压缩文件,其中包括"Test1 ...

  7. 计算机表格应用试卷,2020年7月网络教育统考《计算机应用基础》电子表格模拟题试卷操作题...

    2020年7月网络教育统考<计算机应用基础>电子表格模拟题试卷操作题 操作题: 1.打开考生文件夹下的Excel工作簿"EXCEL考题6.xlsx",在Sheet1工作 ...

  8. 计算机安全被动攻击的技术手段,2020年9月网络教育统考《计算机应用基础》计算机安全模拟题试卷3...

    2020年9月网络教育统考<计算机应用基础>计算机安全模拟题试卷3 23.以下符合网络行为规范的是________. A.给别人发送大量垃圾邮件 B.破译别人的密码 C.未经许可使用别人的 ...

  9. 计算机网络统考outlook操作视频,2020年9月网络教育统考《计算机应用基础》Outlook模拟题试卷...

    网络教育统考一般都需要考计算机应用基础. 大学英语等科目,其中计算机应用基础考试分很多题型,比如Outlook.基础知识.计算机安全等等,现在我们提供Outlook的模拟试卷,学生们可以根据题目进行复 ...

最新文章

  1. hive编程指南电子版_第三篇|Spark SQL编程指南
  2. OK,让我们开始吧!
  3. 爱要大声“手”出来!一个程序猿的七夕表白应用!
  4. javascript链式语法
  5. Python【每日一问】16
  6. 编程实现木马的ActiveX启动和注入IE的启动方式
  7. 在asp.net中调用process.start执行程序
  8. java技术简介英文_Java技术常见的英文缩写
  9. w8系统搭建php网站,360W8系统下如何配置PHP网站运行环境
  10. 自旋锁 Linux内核,Linux内核中的自旋锁
  11. JavaScript模拟终端输出
  12. MySQL安装包下载地址(含所有版本)
  13. JAVA实现饭店点菜系统详解
  14. 骗的就是你!揭露买本10大愚蠢表现
  15. Python概率分布大全(含可视化)
  16. 阿里云 IoT 物联网平台 MQTT 通讯模式
  17. [linux学习]centos下mysql的简单使用教程
  18. java getinstance 反射_Java 基础篇之反射
  19. 伊斯坦布尔的流浪 (一)
  20. 数据预处理——离散化

热门文章

  1. 外排序(最小输者树实现)
  2. Session原理、生命周期及购物车功能的实现
  3. mysql 赋给用户表权限
  4. Sante DICOM 6IN1 Crack
  5. 【luogu P4320】道路相遇(圆方树)
  6. 在云服务器上部署web项目(CVM)
  7. 古文入门 Introduction to Classical Chinese
  8. 安装ubuntu18.04分区设置
  9. Python笔记-Selenium自动化测试
  10. UVA804 Petri网模拟 Petri Net Simulation