AT_past18_g.二回の交換

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定长度为 NN 的数列 A=(A1,A2,…,AN)A = (A_1, A_2, \ldots, A_N) 和 B=(B1,B2,…,BN)B = (B_1, B_2, \ldots, B_N)。

你需要对数列 AA 恰好进行两次如下操作:

  • 选择一个整数 ii 满足 1≤i<N1 \leq i < N,交换 AiA_i 和 Ai+1A_{i + 1} 的值。

请判断是否可以通过恰好两次操作使得 A=BA = B。

输入格式

输入由标准输入给出,格式如下:

NN A1A_1 A2A_2 …\ldots ANA_N B1B_1 B2B_2 …\ldots BNB_N

输出格式

如果可以通过恰好两次操作使得 A=BA = B,输出 Yes,否则输出 No。

输入输出样例

  • 输入#1

    5
    1 3 5 5 2
    3 1 5 2 5

    输出#1

    Yes
  • 输入#2

    3
    2 2 2
    3 3 3

    输出#2

    No

说明/提示

样例解释 1

你可以如下操作使得 A=BA = B:

  • 选择 i=1i = 1。交换 A1A_1 和 A2A_2,得到 A=(3,1,5,5,2)A = (3, 1, 5, 5, 2)。
  • 选择 i=4i = 4。交换 A4A_4 和 A5A_5,得到 A=(3,1,5,2,5)A = (3, 1, 5, 2, 5)。

数据范围

  • 2≤N≤2×1052 \leq N \leq 2 \times 10^5
  • 1≤Ai,Bi≤N1 \leq A_i, B_i \leq N
  • 所有输入均为整数。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页