Codeforces Round 839 (Div. 3)E题解

文章目录

Permutation Game

问题建模

给定一个长度为n的排列,排列的每个元素都被阻塞无法移动,有两个玩家,每个玩家每一轮可以选择三种操作的一种执行,操作1为重新排序所有未被阻塞的元素,操作2为将序列中的一个元素解除阻塞,操作3为跳过,若玩家1能先将所有元素排为升序则其胜利,若玩家2能将所有元素排为降序则其胜利,否则平局。

问题分析

1.分析一个玩家想要获胜的关键

一个玩家想要获胜则需要在其想要获得顺序的元素中那些不符合他所需顺序的元素都解除阻塞后,第一个执行重新排序的操作将所有元素排成所需的才可以。而另一个玩家想要获胜也同样如此。因此获胜关键在阻塞元素上。

2.分析阻塞元素的类别

两个玩家都需要解除阻塞不符合他们所需顺序的元素,而这些元素中有一部分位置是一样的,为了让自己获胜,则优先做对自己最有利的事,即先解封不一样的。设玩家1独立所需解封元素数量为a,玩家2独立所需解封元素数量为b,共同所需解封元素数量为c。

3.分析阻塞元素的类别对于局面的影响

当玩家1想要获胜时需要将其所有需要解除阻塞的元素都解除,且需要赶在另一个玩家解除其单独所需元素之前执行完,则需满足的条件为a+c<=b,取等于是因为玩家1先手的话,当所有所需元素都解封了,能先手执行排序操作,若满足小于的话则必定能在玩家2解除其单独所需元素之前,将自己所需元素都解除,且先执行排序操作。

则当玩家2想要获胜时则需要满足的条件为b+c<a,若满足该条件必定能在玩家1解除其所需元素之前,将自己所需元素都解除,且先执行排序操作。

其余情况,则为任意一个玩家都不能赶在另一个玩家解除其单独所需元素之前先将所需元素都解除阻塞,那另一个玩家在解除其单独所需元素后,可以一直执行操作3,等待所有元素解封后执行排序操作,则最终进入两个玩家都不解除最终所需的元素,从而平局。

代码

c 复制代码
#include<bits/stdc++.h>

#define x first
#define y second
#define C(i) str[0][i]!=str[1][i]
using namespace std;
typedef unsigned long long ULL;
typedef long long LL;
typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;
const int N = 5e5 + 10, INF = 0x3f3f3f3f;

void solve() {
    int n;
    cin >> n;
    int a = 0, b = 0, c = 0;
    for (int i = 0; i < n; i++) {
        int x;
        scanf("%d", &x);
        if (x != i + 1) {
            if (x != n - i)  c++;
            else a++;
        } else b++;
    }

    if(a+c<=b)  puts("First");
    else if(b+c<a)  puts("Second");
    else puts("Tie");
}

int main() {
    int t = 1;
    cin >> t;
    while (t--) solve();
    return 0;
}
相关推荐
2301_764441334 小时前
LISA时空跃迁分析,地理时空分析
数据结构·python·算法
东北洗浴王子讲AI4 小时前
GPT-5.4辅助算法设计与优化:从理论到实践的系统方法
人工智能·gpt·算法·chatgpt
Billlly5 小时前
ABC 453 个人题解
算法·题解·atcoder
玉树临风ives5 小时前
atcoder ABC 452 题解
数据结构·算法
feifeigo1235 小时前
基于马尔可夫随机场模型的SAR图像变化检测源码实现
算法
fengfuyao9856 小时前
基于STM32的4轴步进电机加减速控制工程源码(梯形加减速算法)
网络·stm32·算法
无敌昊哥战神7 小时前
深入理解 C 语言:巧妙利用“0地址”手写 offsetof 宏与内存对齐机制
c语言·数据结构·算法
小白菜又菜7 小时前
Leetcode 2075. Decode the Slanted Ciphertext
算法·leetcode·职场和发展
Proxy_ZZ07 小时前
用Matlab绘制BER曲线对比SPA与Min-Sum性能
人工智能·算法·机器学习
黎阳之光7 小时前
黎阳之光:以视频孪生领跑全球,赋能数字孪生水利智能监测新征程
大数据·人工智能·算法·安全·数字孪生