首页 > 其他分享 >来欣赏10k分讨T1代码

来欣赏10k分讨T1代码

时间:2024-09-30 14:34:30浏览次数:1  
标签:10k const int T1 num maxn 分讨

点击查看代码
#include<bits/stdc++.h>
#define _ num[i]
using namespace std;
const int maxn=1e5+9;
const int mod=998244353;
int n,cnt,ans,s[7][maxn],num[maxn<<3];
int low(int x,int id){return lower_bound(s[id]+1,s[id]+n+1,x)-s[id]-1;}
int up(int x,int id){return n-(upper_bound(s[id]+1,s[id]+n+1,x)-s[id]-1);}
int same(int x,int id){return upper_bound(s[id]+1,s[id]+n+1,x)-lower_bound(s[id]+1,s[id]+n+1,x);}
int main(){
	freopen("median.in","r",stdin);
	freopen("median.out","w",stdout);
	scanf("%d",&n);
	for(int i=1;i<=5;i++){
		for(int j=1;j<=n;j++){
			scanf("%d",&s[i][j]);
			num[++cnt]=s[i][j];
		}
		sort(s[i]+1,s[i]+n+1);
	}
	sort(num+1,num+cnt+1);
	cnt=unique(num+1,num+cnt+1)-num-1;
	for(int i=1;i<=cnt;i++){
		int tmp=0;long long sm=0;
		sm=same(_,1);
		if(sm){
			(tmp+=sm*low(_,2)%mod*low(_,3)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,4)%mod*up(_,3)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,3)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,2)%mod*up(_,3)%mod)%=mod;
		}
		sm=same(_,2);
		if(sm){
			(tmp+=sm*low(_,1)%mod*low(_,3)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,4)%mod*up(_,3)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,3)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,1)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,1)%mod*up(_,3)%mod)%=mod;
		}
		sm=same(_,3);
		if(sm){
			(tmp+=sm*low(_,2)%mod*low(_,1)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,4)%mod*up(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,1)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,4)%mod*up(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,2)%mod*up(_,1)%mod)%=mod;
		}
		sm=same(_,4);
		if(sm){
			(tmp+=sm*low(_,2)%mod*low(_,3)%mod*up(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,1)%mod*up(_,3)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,3)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,1)%mod*up(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,2)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,2)%mod*up(_,3)%mod)%=mod;
		}
		sm=same(_,5);
		if(sm){
			(tmp+=sm*low(_,2)%mod*low(_,3)%mod*up(_,4)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,4)%mod*up(_,3)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,1)%mod*up(_,3)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,2)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,1)%mod*up(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,1)%mod*up(_,2)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,5)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,3)%mod;
		if(sm){
			(tmp+=sm*low(_,2)%mod*low(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,5)%mod*up(_,2)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*low(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,5)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,2)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,4)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,2)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,3)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*low(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,5)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*low(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,5)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,5)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,1)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,1)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,4)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,1)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,1)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,3)*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*low(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,5)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,5)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,3)*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*low(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,4)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,4)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,4)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,4)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,4)*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*low(_,2)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,3)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*low(_,3)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,2)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*up(_,3)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,3)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,3)%mod;
		if(sm){
			(tmp+=sm*low(_,4)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,5)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,5)%mod)%=mod;
			(tmp+=sm*up(_,5)%mod*up(_,4)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,5)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,5)%mod)%=mod;
			(tmp+=sm*up(_,5)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,4)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,4)%mod)%=mod;
			(tmp+=sm*up(_,4)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,3)%mod*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,2)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,5)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,5)%mod*low(_,2)%mod)%=mod;
			(tmp+=sm*up(_,2)%mod*up(_,5)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,3)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,4)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*low(_,2)%mod)%=mod;
			(tmp+=sm*up(_,2)%mod*up(_,4)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,2)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*low(_,2)%mod)%=mod;
			(tmp+=sm*up(_,2)%mod*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,3)%mod*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*up(_,5)%mod)%=mod;
			(tmp+=sm*low(_,5)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,5)%mod)%=mod;
			(tmp+=sm*up(_,5)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,3)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*up(_,4)%mod)%=mod;
			(tmp+=sm*low(_,4)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,4)%mod)%=mod;
			(tmp+=sm*up(_,4)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*up(_,3)%mod)%=mod;
			(tmp+=sm*low(_,3)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,3)%mod)%=mod;
			(tmp+=sm*up(_,3)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,3)*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod*up(_,2)%mod)%=mod;
			(tmp+=sm*low(_,2)%mod*up(_,1)%mod)%=mod;
			(tmp+=sm*low(_,1)%mod*low(_,2)%mod)%=mod;
			(tmp+=sm*up(_,2)%mod*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,3)%mod*same(_,4)%mod;
		if(sm){
			(tmp+=sm*low(_,5)%mod)%=mod;
			(tmp+=sm*up(_,5)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,3)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,4)%mod)%=mod;
			(tmp+=sm*up(_,4)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,3)%mod)%=mod;
			(tmp+=sm*up(_,3)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,3)%mod*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,2)%mod)%=mod;
			(tmp+=sm*up(_,2)%mod)%=mod;
		}
		sm=1ll*same(_,2)*same(_,3)%mod*same(_,4)%mod*same(_,5)%mod;
		if(sm){
			(tmp+=sm*low(_,1)%mod)%=mod;
			(tmp+=sm*up(_,1)%mod)%=mod;
		}
		sm=1ll*same(_,1)*same(_,2)%mod*same(_,3)%mod*same(_,4)%mod*same(_,5)%mod;
		if(sm) (tmp+=sm)%=mod;
		(ans+=1ll*_*tmp%mod)%=mod;
	}
	return printf("%d\n",ans),0;
}

标签:10k,const,int,T1,num,maxn,分讨
From: https://www.cnblogs.com/hypixel/p/18441783

相关文章

  • 《迁移学习》—— 将 ResNet18 模型迁移到食物分类项目中
    文章目录一、迁移学习的简单介绍1.迁移学习是什么?2.迁移学习的步骤二、数据集介绍三、代码实现1.步骤2.所用到方法介绍的文章链接3.完整代码一、迁移学习的简单介绍1.迁移学习是什么?迁移学习是指利用已经训练好的模型,在新的任务上进行微调。迁移学习可以加快模......
  • DHT11
    DHT11前面一直在讲串口类设备,今天讲IO类设备,不同的接口方式目录DHT11查资料文档的梳理代码编写初始化(时钟、IO、其他)单总线的读取流程1、主机发送复位信号2、DHT11响应信号3、数据传输4、校验数据5、数据获取main.c补充:stlink有个调试的功能-tip:可以适当的总......
  • 使用cifar100上训练的resnet18进行ood测试
    以cifar100作为闭集(closed-set)数据集,使用resnet18模型进行训练,然后在常见的开集(out-of-distribution)数据集上进行OOD检测。使用MSP(MaximumSoftmaxProbability)作为OOD检测的依据。开集噪声数据集使用gaussian,rademacher,blob,svhn四种类型。其中gaussian、rademacher......
  • Win11本地部署FaceFusion3最强AI换脸,集成Tensorrt10.4推理加速,让甜品显卡也能发挥生
    FaceFusion3.0.0大抵是现在最强的AI换脸项目,分享一下如何在Win11系统,基于最新的cuda12.6配合最新的cudnn9.4本地部署FaceFusion3.0.0项目,并且搭配Tensorrt10.4,提高推理速度和效率,让甜品级显卡也能爆发生产力。安装最新版本Cuda12.6以及Cudnn9.4CUDA是NVIDIA公司开发的一种技术,......
  • Springboot宠物管理系统nt169(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,寄养者,宠物分类,养宠经验,宠物寄养,宠物领养,走失宠物,网站公告开题报告内容一、引言随着现代生活节奏的加快和人们情感需求的日益增长,宠物已成为许多家......
  • 36MT160-ASEMI三相电机专用36MT160
    编辑:ll36MT160-ASEMI三相电机专用36MT160型号:36MT160品牌:ASEMI封装:D-63批号:2024+分类:整流桥特性:整流方桥、三相整流桥平均正向整流电流(Id):35A最大反向击穿电压(VRM):1600V恢复时间:>2000ns结温:-55℃~150℃正向峰值电压:1.10V引脚数量:4芯片个数:4芯片尺寸:MIL36MT160特点芯片与底板电气绝缘真......
  • 36MT160-ASEMI三相电机专用36MT160
    编辑:ll36MT160-ASEMI三相电机专用36MT160型号:36MT160品牌:ASEMI封装:D-63批号:2024+分类:整流桥特性:整流方桥、三相整流桥平均正向整流电流(Id):35A最大反向击穿电压(VRM):1600V恢复时间:>2000ns结温:-55℃~150℃正向峰值电压:1.10V引脚数量:4芯片个数:4芯片尺寸:MIL36MT160特点芯......
  • 如何在低成本ARM平台部署LVGL免费图形库,基于全志T113-i
    LVGL简介LVGL(LittlevGraphicsLibrary)是一个开源的图形库,主要用于嵌入式系统创建图形用户界面(GUI),采用C语言编写,具有高效性和可定制性,在各种微控制器平台和显示硬件上开发用户界面时备受欢迎。LVGL具社区免费开源、控件资源丰富、跨平台可移植等特点。社区免费开源:完全免费,......
  • SQL 查询优化思路(行为表 t1 与业绩表 t2 关联):
    语句实例(行为表t1与业绩表t2关联):withtas( select行为id, t1.行为时间,t2.用户id,t2.业绩时间, row_number()over(partitionbyt1.用户idorderbyt1.行为时间desc)asrnkfrom行为表t1join业绩表t2ont1.用户id=......
  • 【hot100-java】【组合总和】
    R8-回溯篇印象题,很基本的回溯classSolution{voidbacktrack(List<Integer>state,inttarget,int[]choices,intstart,List<List<Integer>>ret){//子集和等于target,记录解if(target==0){ret.add(newArrayList<>(state));......