2023NOIP A层联测25 总结

2023-11-07 00:20
文章标签 总结 25 联测 2023noip

本文主要是介绍2023NOIP A层联测25 总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

T1 让你构造 40 × 40 40\times40 40×40 的只含 r,y,x 的矩阵,含有 r y x ryx ryx 的个数恰好为 n n n n ≤ 2222 n\le2222 n2222。看完题后就开始想构造,一开始想构造 3 ∗ 3 3*3 33, 5 ∗ 5 5*5 55 的单位矩阵的,但是始终不够数。后面去看 T2,是期望,类型从未见过,没多想回去看 T1。大概 9 点时想到了 n = 2217 n=2217 n=2217 的做法,感觉非常可做,就继续看。但是后面快十点了还没想出来,就先打了暴力,大概十点四十调过大样例,自己又造了极限数据也过了,去看 T2。

T2 n n n 间教室,教室 a i a_i ai 个人在打游戏,学生可以让一间教室的人停止玩游戏,老师去抓一间教室的玩游戏的人,学生和老师都有最优策略,问老师期望抓到多少人, n ≤ 30 , a i ≤ 40 n\le30,a_i\le40 n30,ai40。没什么思路,后面打暴力时间就水了 n ≤ 2 n\le2 n2 的数据,感觉两个人答案应该是 0.5 min ⁡ ( a 1 , a 2 ) 0.5\min(a_1,a_2) 0.5min(a1,a2)。赛后发现做法假了,正解二分答案,用概率去做。

T3 对于排列 p p p,定义 f ( k , i ) = min ⁡ j = k k + i − 1 a j f(k,i)=\min\limits_{j=k}^{k+i-1}a_j f(k,i)=j=kmink+i1aj F ( k ) = max ⁡ i = 1 n − k + 1 f ( k , i ) F(k)=\max\limits_{i=1}^{n-k+1}f(k,i) F(k)=i=1maxnk+1f(k,i),问有多少排列 p p p 所生成的 F F F 满足输入的 F F F n ≤ 50 n\le50 n50。由于做到这里就是打暴力时间了,就直接打阶乘暴力,10min 打完,后面又去打 F ( i ) = n − i + 1 F(i)=n-i+1 F(i)=ni+1 的特殊性质。

T4 一个 01 权无向图,你要给每个点赋一个字母 A , B , C , D A,B,C,D A,B,C,D,满足边权为 1 1 1 的边两端的点字母满足要求, n ≤ 1 0 6 n\le10^6 n106。本来想打暴力的,结果不会骗。看题解用了 2-sat,挺巧妙的逻辑转换。

期望得分:80+20+30+0=130pts

实际得分:20+0+30+0=50pts

总结:挂分了,T1 只造了大数据,没考虑 1 , 2 1,2 1,2 这些小的情况;T2 n = 2 n=2 n=2 时策略不是我想的那样。造hack 数据时要大小都要造,要针对写代码时不是很明的地方造hack。小技巧:博弈论局面不明的情况考虑用概率去做。现在发现 T3 用了之前积累过的技巧赛时忘了,要多复习这些技巧写在博客里。

这篇关于2023NOIP A层联测25 总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/359968

相关文章

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Python中实现进度条的多种方法总结

《Python中实现进度条的多种方法总结》在Python编程中,进度条是一个非常有用的功能,它能让用户直观地了解任务的进度,提升用户体验,本文将介绍几种在Python中实现进度条的常用方法,并通过代码... 目录一、简单的打印方式二、使用tqdm库三、使用alive-progress库四、使用progres

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的

C# Task Cancellation使用总结

《C#TaskCancellation使用总结》本文主要介绍了在使用CancellationTokenSource取消任务时的行为,以及如何使用Task的ContinueWith方法来处理任务的延... 目录C# Task Cancellation总结1、调用cancellationTokenSource.

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

二分最大匹配总结

HDU 2444  黑白染色 ,二分图判定 const int maxn = 208 ;vector<int> g[maxn] ;int n ;bool vis[maxn] ;int match[maxn] ;;int color[maxn] ;int setcolor(int u , int c){color[u] = c ;for(vector<int>::iter

整数Hash散列总结

方法:    step1  :线性探测  step2 散列   当 h(k)位置已经存储有元素的时候,依次探查(h(k)+i) mod S, i=1,2,3…,直到找到空的存储单元为止。其中,S为 数组长度。 HDU 1496   a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 。 x在 [-100,100] 解的个数  const int MaxN = 3000