实在是打击人信心的一场比赛啊……一不注意就掉了 50+ 分,rating 没了啊/ll/dk/wq/kk

A

Weak pretest!!!!!11 /fn/fn/fn

一个很显然的注意点是在交换前后,对于每一种数 \(c\) 而言,奇数位上的 \(c\) 中朝右的人数的奇偶性不会发生变化,偶数位上的 \(c\) 中朝右的人数的奇偶性也不会发生变化,因此我们只需检验排序前后奇偶位上数的组成是否相同即可,时间复杂度 \(Tn\log n\)。

现场降智选手,指我无疑了

B

首先根据手玩样例法可以发现 \(\dbinom{13}{5}=\dbinom{13}{8}=1287,\dbinom{13}{4}=\dbinom{13}{9}=715\),因此考虑 \(5,8\),以及后面的 \(4,9\) 是个什么东西,再通过瞪眼法可以发现 \(8\) 恰好是样例中 \(0\) 的个数,\(5\) 恰好是每个全 \(1\) 段中 \(1\) 的个数除以二下取整,于是写个组合数求一求即可。

证明?别问我,我什么也不知道

C

首先记目前没有确定是否被划分进集合的排列的集合为 \(S\),那么我们枚举 \(S\) 中每一个排列 \(p\),如果排列 \(p\) 中存在一个位置满足 \(S\) 中没有其他排列和它值相同,那么根据题目的性质显然它只能在前 \(n\) 个排列中,与此同时我们把与它有重复值的排列设为“不在前 \(n\) 个排列中”并从 \(S\) 中删去;否则根据抽屉原理,每个数在 \(S\) 对应的列中必须恰好出现了两次,这也就意味着那些在原拉丁方阵中的排列和不在原拉丁方阵中的排列是平分秋色的,都能和已经选出的排列集合组成拉丁方阵,此时我们需要将答案乘以 \(2\),并随便选择一个排列设为在拉丁方阵中,并将与其存在重复值的排列从 \(S\) 中删除,重复以下步骤直到选出 \(n\) 个排列为止即可。

时间复杂度 \(n^3\)。

D

我们考虑求出每个排列所有时刻坐标的和 \(s1_i\) 以及平方和 \(s2_i\),记 \(S=\sum\limits_{i=1}^mv_i,T=\sum\limits_{i=1}^mv_i^2\),那么如果没有错误元素,一定有 \(s1_{i+1}-s1_i=S\),由此可以确定错误元素所在的时刻 \(p\),而根据第 \(j\) 个人 \(i\) 时刻的坐标为 \(x_{j}+i·v_j\) 可知,对于三个连续的时刻 \(t-1,t,t+1\),有

\[\begin{cases}
\sum\limits_{j=1}^m(x_j+(t-1)·v_j)^2=s2_{t-1}\\
\sum\limits_{j=1}^m(x_j+t·v_j)^2=s2_{t}\\
\sum\limits_{j=1}^m(x_j+(t+1)·v_j)^2=s2_{t+1}
\end{cases}
\]

一式加三式减两倍的二式,得

\[T=\dfrac{s2_{t-1}+s2_{t+1}-2s2_t}{2}
\]

由此可以确定第 \(i\) 行所有坐标的和及平方和,这样我们枚举修改的元素是哪个,根据第 \(i\) 行坐标的和求出被改前的元素,并 check 平方和是否满足要求即可。

时间复杂度 \(nm\)。

Codeforces Round #732 (Div.1) 题解的更多相关文章

  1. Codeforces Round #182 (Div. 1)题解【ABCD】

    Codeforces Round #182 (Div. 1)题解 A题:Yaroslav and Sequence1 题意: 给你\(2*n+1\)个元素,你每次可以进行无数种操作,每次操作必须选择其 ...

  2. Codeforces Round #608 (Div. 2) 题解

    目录 Codeforces Round #608 (Div. 2) 题解 前言 A. Suits 题意 做法 程序 B. Blocks 题意 做法 程序 C. Shawarma Tent 题意 做法 ...

  3. Codeforces Round #525 (Div. 2)题解

    Codeforces Round #525 (Div. 2)题解 题解 CF1088A [Ehab and another construction problem] 依据题意枚举即可 # inclu ...

  4. Codeforces Round #528 (Div. 2)题解

    Codeforces Round #528 (Div. 2)题解 A. Right-Left Cipher 很明显这道题按题意逆序解码即可 Code: # include <bits/stdc+ ...

  5. Codeforces Round #466 (Div. 2) 题解940A 940B 940C 940D 940E 940F

    Codeforces Round #466 (Div. 2) 题解 A.Points on the line 题目大意: 给你一个数列,定义数列的权值为最大值减去最小值,问最少删除几个数,使得数列的权 ...

  6. Codeforces Round #677 (Div. 3) 题解

    Codeforces Round #677 (Div. 3) 题解 A. Boring Apartments 题目 题解 简单签到题,直接数,小于这个数的\(+10\). 代码 #include &l ...

  7. Codeforces Round #665 (Div. 2) 题解

    Codeforces Round #665 (Div. 2) 题解 写得有点晚了,估计都官方题解看完切掉了,没人看我的了qaq. 目录 Codeforces Round #665 (Div. 2) 题 ...

  8. Codeforces Round #160 (Div. 1) 题解【ABCD】

    Codeforces Round #160 (Div. 1) A - Maxim and Discounts 题意 给你n个折扣,m个物品,每个折扣都可以使用无限次,每次你使用第i个折扣的时候,你必须 ...

  9. Codeforces Round #383 (Div. 2) 题解【ABCDE】

    Codeforces Round #383 (Div. 2) A. Arpa's hard exam and Mehrdad's naive cheat 题意 求1378^n mod 10 题解 直接 ...

随机推荐

  1. UE4蓝图AI角色制作(七)之追逐玩家

    15.追逐玩家 现在我们的AI无法做出任何决策,它总是执行相同的决策.我们先把感知系统中的相关信息提供给AI,让AI知道如何做出决策,然后我们会修改行为树.我们首先需要创建新的黑板键,这样我们就能在行 ...

  2. Linux搭建SVN服务器详细教程

    前言 本文讲解Linux系统下如何搭建SVN服务器,详细说明各配置项的功能,最终实现可管控多个项目的复杂配置. SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统 ...

  3. relativeLayout相对布局的嵌套在py中的引用

    from kivy.app import App from kivy.uix.button import Button from kivy.uix.relativelayout import Rela ...

  4. 易维巡APP技术支持

    亲爱的用户 如果您在使用我们的产品时遇到任何问题,请随时与我们联系,我们将全力全意为您解决! 请发邮件与我们联系,我们将24小时为您服务! 电话:18251927768 邮箱地址:xshm999@16 ...

  5. [no_code][Beta]设计和计划

    2020春季计算机学院软件工程(罗杰 任健) 2020春季计算机学院软件工程(罗杰 任健) 作业要求 Beta设计和计划 我们在这个课程的目标是 远程协同工作,采用最新技术开发软件 这个作业在哪个具体 ...

  6. Beta阶段第三次会议

    Beta阶段第三次会议 完成工作 姓名 工作 难度 完成度 ltx 1.掌握小程序代码和相关知识2.构思小程序游客模式 轻 90% xyq 1.修改场地表格信息2.对原页面活动申请场地部分进行修改 轻 ...

  7. Noip模拟79 2021.10.17(题目名字一样)

    T1 F 缩点缩成个$DAG$,然后根据每个点的度数计算期望值 1 #include<cstdio> 2 #include<cstring> 3 #include<vec ...

  8. 不可错过的stm32单片机直流电机驱动与测速详解

    stm32直流电机驱动与测速 说实话就现在的市场应用中stm32已经占到了绝对住到的地位,51已经成为过去式,32的功能更加强大,虽然相应的难度有所增加,但是依然阻止不了大家学习32的脚步,不说大话了 ...

  9. 最接近的数 牛客网 程序员面试金典 C++ Python

    最接近的数 牛客网 程序员面试金典 C++ Python 题目描述 有一个正整数,请找出其二进制表示中1的个数相同.且大小最接近的那两个数.(一个略大,一个略小) 给定正整数int x,请返回一个ve ...

  10. path-sum-ii leetcode C++

    Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given su ...