牛客周赛 Round 136

小红的数组重排

考点:无

思路:

按题意模拟即可。

复杂度:O(1)

python 复制代码
import sys
input=sys.stdin.readline
a1,a2,a3=map(int,input().split())
b1=a2
b2=a3
b3=a1
print(b1,b2,b3)

小红的回文串构造

考点:无

思路:

因为题目说了要所有字符互不相同,所以我们可以得出结论只有n是1的时候才有输出,其他都是No。

复杂度:O(n)

python 复制代码
import sys
input=sys.stdin.readline
t=int(input())
for _ in range(t):
    n=int(input())
    if n==1:
        print(chr((ord('a')+(n-1))))
    else:
        print("No")

小红的排列

考点:逆元

思路:

我们可以先算出偶数,奇数在n中的个数,然后在算出o,j,?在字符串a中的个数。

然后可以得到结论问号个数对上还要放的奇数个数的逆元乘上奇数总数的阶乘乘上偶数总数的阶乘就行了。

复杂度:O(n)

python 复制代码
import sys
input=sys.stdin.readline
mod=998244353
n=int(input())
a=input().strip()
os=n//2
js=n-os
gso=a.count('o')
gjs=a.count('j')
qt=a.count('?')
if gso>os or gjs>js:
    print(0)
    sys.exit()
need=js-gjs
if need<0 or need>qt:
    print(0)
    sys.exit()
f=[1]*(n+1)
for i in range(1,n+1):
    f[i]=f[i-1]*i%mod
def C(n,k):
    if k<0 or k>n:
        return 0
    return f[n]*pow(f[k],mod-2,mod)%mod*pow(f[n-k],mod-2,mod)%mod
cnt=C(qt,need)*f[js]%mod*f[os]%mod
print(cnt%mod)

小红的中位数

考点:二分

思路:

找出比中位数小的和大的有多少个,然后将中位数公式变一下形,可以得出关于两边的两个式子。

复杂度:O(nlogn)

python 复制代码
import sys
input=sys.stdin.readline
from bisect import bisect_left,bisect_right
n=int(input())
a=list(map(int,input().split()))
a.sort()
x=a[(n-1)//2]
l=bisect_left(a,x)
r=bisect_right(a,x)
g=n-r
ans=10**18
if l>0:
    ans=min(ans,n-2*l)
if g>0:
    ans=min(ans,n-(2*g-1))
if ans==10**18:
    print(-1)
else:
    print(ans)
相关推荐
lusklusklusk几秒前
Python 巡检脚本:进程运行状态、数据库写入时效检查及邮件通知与告警
数据库·python·oracle
Angeldream12315 分钟前
第 10 章 医学影像伦理与安全
图像处理·人工智能·python·安全·机器学习·医学影像
勤奋的大熊猫30 分钟前
Python 双层 enumerate 循环选取最后一层循环的优雅写法
python
JYCJ_36 分钟前
星愿池·子项清单
python
Wang's Blog38 分钟前
Java 项目实战: 交友项目 - 动态查询开工:昨日回顾与今日任务
java·python·交友
2601_9679791241 分钟前
0 到 1 学爬虫:用 Python 爬取网页数据指南一(附实战案例)
爬虫·python·实战案例·html解析·网页数据
云和数据.ChenGuang1 小时前
光哥说Python 异常深度解析:从异常模型到工程化实践
java·前端·人工智能·python·langchain
SelectDB1 小时前
云数仓月度账单总是超预算:Apache Doris 与 Snowflake 五类成本项拆解与对账脚本
python
迪菲赫尔曼1 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
叉烧滑蛋1 小时前
B站台湾大学郭彦甫|MATLAB 学习笔记|04 变量与档案存取
数据结构