当前位置: 首页 > java >正文

河南萌新联赛2025第(七)场:郑州轻工业大学

文章目录

  • M-奥数班
    • 解题思路
    • AC代码
  • J-掷骰子
    • 解题思路
    • AC代码
  • C-灯光是我在异世界的呼喊'
    • 解题思路
    • AC代码
  • K-好奇的小夏
    • 解题思路
    • AC代码
  • D-灯泡
    • 解题思路
    • AC代码
  • L-打游戏 or 写程序
    • 解题思路
    • AC代码

做事情要有始有终,补题也是,怎么能少了这最后一场呢。今天终于有时间将最后一场的萌新赛补下题。

比赛来源:河南萌新联赛2025第(七)场:郑州轻工业大学

M-奥数班

在这里插入图片描述

解题思路

按照题目模拟即可

AC代码

void solve()
{int a,b;cin>>a>>b;if(a>=b*10)cout<<">>";if(a>b&&a<b*10)cout<<">";if(a==b)cout<<"=";if(b>a&&b<a*10)cout<<"<";if(b>=a*10)cout<<"<<"; 
}

J-掷骰子

在这里插入图片描述

解题思路

通过观察可以发现,最小能构成的数是45最大能构成的数是495,所以如果这个数小于45或者大于495就是一定不能构成的,再观察这些数,发现只要在45的基础上加上5的倍数且不超过495就是一定能构成的,因此只需要判断这个数-45后能否整除5.

AC代码

void solve()
{int n,x,ans=0;cin>>n;for(int i=1;i<=n;i++){cin>>x;if(x<45||(x-45)%5!=0||x>495)ans++;}cout<<ans;}

C-灯光是我在异世界的呼喊’

在这里插入图片描述

解题思路

这道题给了所有S的长度不会超过2e5,那么我们是可以用map来存每个可能的前缀的个数,然后再遍历这n条密文,看哪个数量最多。

AC代码

void solve()
{cin>>n;vector<string>s(n);for(int i=0;i<n;i++){cin>>s[i];string s1;for(auto c:s[i]){s1+=c;mp[s1]++;}}int ans=0;for(auto x:s)ans=max(ans,mp[x]);cout<<ans;	
}

K-好奇的小夏

在这里插入图片描述

解题思路

利用双指针和滑动窗口的思想,先对数字进行排序,然后依次判断每个数所能构成的最多数量,利用双指针,通过加过之后的和减去原来的和得到需要的操作次数,利用前缀和可以大大节省时间,如果大于k就不满足需要缩短长度,最后更新最优即可。

AC代码

void solve()
{cin>>n>>k;for(int i=1;i<=n;i++)cin>>a[i];sort(a+1,a+1+n);for(int i=1;i<=n;i++)s[i]=s[i-1]+a[i];int mx=-1e18,ans=1e18,l=1;for(int r=1;r<=n;r++){while((a[r]*(r-l+1))-(s[r]-s[l-1])>k)l++;//判断这个数所能构成的最大数量int len=r-l+1;if(len>mx){mx=len;ans=a[r];}}cout<<mx<<" "<<ans<<endl;
}

D-灯泡

在这里插入图片描述

解题思路

打表找规律。

AC代码

void solve()
{cin >> n;cout << (int)(sqrt(n))+(int)(sqrt(n/2));
}

L-打游戏 or 写程序

在这里插入图片描述

解题思路

定义dp[i]为前 i 个中,第 i 个是打游戏的所有可能性数目,对于每个位置 i,如果第 i 个事件是打游戏,那么前一个打游戏事件的位置最多只能是i - k - 1(因为中间至少有 k 个写程序事件)。因此dp[i]是前 i - k - 1个位置中所有打游戏可能性的和。然后使用前缀和数组S,其中s[i]表示前 i 个位置的 dp 值的和。这样可以将状态转移的时间复杂度优化到 (O(1))

AC代码

void solve()
{int n,k;cin>>n>>k;vector<int>s(n+2,0);s[0]=1;for(int i=1;i<=n;i++){int l=0;if(i-k-1>0)l=i-k-1;s[i]=s[l];s[i]=(s[i]+s[i-1])%mod; }cout<<s[n]<<endl;	
}
http://www.xdnf.cn/news/20068.html

相关文章:

  • 直接让前端请求代理到自己的本地服务器,告别CV报文到自己的API工具,解放双手
  • android View详解—自定义ViewGroup,流式布局
  • 亚洲数字能源独角兽的 “安全密码”:Parasoft为星星充电筑牢软件防线
  • MongoDB 高可用部署:Replica Set 搭建与故障转移测试
  • SpringCloud微服务基于nacos注册中心的服务发现模式及OpenFeign的使用
  • Redis在商城开发中起到什么作用?
  • 漏洞修复 Nginx TLSSSL 弱密码套件
  • 2025国赛C题保姆级教程思路分析 NIPT 的时点选择与胎儿的异常判定
  • 【完整源码+数据集+部署教程】陶瓷物品实例分割系统源码和数据集:改进yolo11-LVMB
  • 第22节:性能监控与内存管理——构建高性能3D应用
  • 3ds Max流体模拟终极指南:打造逼真液体效果,从瀑布到杯中溢出的饮料!
  • 240. 搜索二维矩阵 II
  • 2025年含金量高的经济学专业证书工科!【纯干货分享】
  • 文件系统-哈希结构文件
  • 食物分类案例优化 调整学习率和迁移学习
  • Paraverse平行云实时云渲染助力第82届威尼斯电影节XR沉浸式体验
  • 火山引擎数据智能体DataAgent总结分享
  • 小型企业MES软件开发的核心要点
  • 遥感语义分割辅导
  • PWM正相输出和PWM反相输出的各是怎样的工作原理
  • 别再和正则表达式死磕了!这套AI工具集让你的开发效率翻倍⚙️[特殊字符]
  • OPENCV复习第二期
  • 【ffmepg+ AI 】从mp3歌曲提取伴奏(纯音乐)
  • SQL常见索引失效导致慢查询情况
  • mysql集群部署(Mysql Group Replication)
  • 如何将数据从 Infinix 转移到 Infinix ?
  • 生活在数字世界:一份人人都能看懂的网络安全生存指南
  • @Percona XtraBackup 进行 MySQL 备份恢复
  • Day35 TCP实时聊天程序实现(多线程)
  • 3 步搞定顶刊科研插图!用 GPT-5 反推提示词,Nano Banana 模型一键出图,附实操演示