0807 ABC360_D Ghost Ants | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

0807

ABC360_D Ghost Ants

Easy 时间限制 1000 ms 内存限制 262144 KB
二分

题目详情

返回题库

题目描述

在一条标有1至N的数线上有N只蚂蚁。蚂蚁i(1≤i≤N)从坐标$X_i$开始,朝向正方向或负方向。最初,所有蚂蚁都位于不同的坐标上。每只蚂蚁面对的方向由长度为N的二进制字符串S表示,其中如果$S_i$为 "0",则蚂蚁i面对的是负方向;如果$S_i$为 "1",则蚂蚁i面对的是正方向。

假设当前时间为0,在(T+0.1)个单位时间内,蚂蚁以每单位时间1个单位的速度向各自的方向移动,直到时间(T+0.1)。如果多只蚂蚁到达同一坐标,它们会互相穿过,方向和速度都不会改变。经过(T+0.1)个单位时间后,所有蚂蚁停止。

求从现在起到时间(T+0.1)之前,1≤i<j≤N与蚂蚁i和j相互经过的蚂蚁对(i,j)的个数。

输入描述

第一行N和T

第二行字符串S

第三行$X_1,X_2,X_3.......X_N$


数据范围:

  • 2≤N≤2×$10^5$
  • 1≤T≤$10^9$
  • 字符长度为N,有0和1组成
  • $10^9$≤$X_i$≤$10^9$(1≤i≤N)
  • $X_i$$X_j$(1≤i<j≤N)

输出描述

打印答案

提示

样例1解释:

以下五对蚂蚁互相通过:

  • 蚂蚁3和蚂蚁4在0.5时刻擦肩而过。
  • 蚂蚁5和蚂蚁6在1时刻擦肩而过。
  • 蚂蚁1和蚂蚁2在2时刻擦肩而过。
  • 蚂蚁3和蚂蚁6在2时刻擦肩而过。
  • 蚂蚁1和蚂蚁4在3时刻擦肩而过。

没有其他成对的蚂蚁互相经过,所以打印5。

测试样例

样例支持多行内容展示
样例1
输入
6 3
101010
-5 -1 0 1 2 4
输出
5
样例2
输入
13 656320850
0100110011101
-900549713 -713494784 -713078652 -687818593 -517374932 -498415009 -472742091 -390030458 -379340552 -237481538 -44636942 352721061 695864366
输出
14
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。