Codeforces Global Round 1 D - Jongmah(dp)

【比赛小结和题解】Codeforces Global Round 1 注意贪心,简单dp技巧,还有AC自动机+数位dp 从重要的题开始 题解连接 1110G - Tree-Tac-Toe 题意: 给出一棵树,上面有白点和未染色点,白色先手,轮流染色。当染成3个连续白点获胜。问是平局还是白胜。 n <= 5e5 ** 这道贪心很好! 首先通过加点把白点转化成无色。加点只要保证进行相同的染色后先后手不变,并且状态和以前一致。 这样转化大大减少了分类讨论的情况。即使不转化也能讨论。但是转化后模型简单很多! ** *... 阅读详情

题目

n张牌,m种牌,每个牌上一个号

可以连续打三个(3 3 3),也可以连续打顺子(1 2 3)

问最多能打多少组

思路来源

马老师&&航神

题解

首先如果连续3个都有三个,打三个顺和三个仨是一样的,成组消去

打3个相同的也是足够优的,但不是绝对的,

可以证明(好吧我证明不了),

每个拿出6个来专门用于凑顺,

最多给上上个提供2个,上个提供2个,自己开头提供2个

这样足够了,剩下多的用于打仨就行了

 

dp[i+1][j][k]代表对于值为i的数来说,专门拿出j个去凑以i-1开头的顺子,专门拿出k个去凑以i开头的顺子

dp[i+1][k][l]=max(dp[i][j][k]+(num[i]-j-k-l)/3+l,dp[i+1][k][l]);
dp[下一个值][当前值挪出来凑以上一个值开头的顺子的个数][当前值挪出来凑当前值开头的顺子的个数]
j k l就分别是挪出来凑上上个值 上个值 和当前值的个数
为了避免重复统计,只把这些顺子统计在那个开头的值里面,所以加上l
而最后dp[m+1][0][0]显然对于i=m而言,i-1和i都凑不出顺子了(因为没有i+1),所以均0是最优的

心得

感觉是三步三步滑动的这样一个状态转移dp

其实自己写wa贪心代码的时候也考虑着

如果出现1 3 2,1 2 3,1 2 1,2 2 3,这些连续的三个的情况该怎么搞……

然后还分类讨论贪心来着,

现在看来,暴力让它们一起往后推,是为dp。

代码

滚动数组要清零,不然受i-2那个结果影响。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
const int maxn=1e6+10; 
int dp[2][3][3];
int num[maxn],n,m;
int main()
{ 
    scanf("%d%d",&n,&m);
    for(int i=0;i<n;++i)
    {
       int x;
	   scanf("%d",&x);
	   num[x]++;	
    }
    for(int i=1;i<=m;++i)
    { 
           for(int k=0;k<3;++k)
			{
				for(int l=0;l<3;++l)
				{
					dp[(i+1)%2][k][l]=0;
				}
			}
    	for(int j=0;j<3;++j)
		{
			for(int k=0;k<3;++k)
			{
				for(int l=0;l<3;++l)
				{
					if(num[i]<j+k+l)continue;
					dp[(i+1)%2][k][l]=max(dp[i%2][j][k]+(num[i]-j-k-l)/3+l,dp[(i+1)%2][k][l]);
				}
			}
		} 
	}
	printf("%d\n",dp[(m+1)%2][0][0]); 
	return 0;
} 

 

【FPGA】Verilog代码实现温湿度传感器DHT11 #今天也是咸鱼的一天~ 因为参加Robei 杯 是要做一个机器人,先不说这个机器人具体怎么机器法,但是和外界互通的传感器肯定少不了,通过获取外界环境数据,进行处理,然后做出各种各样的功能。 先来讲个简单的模块,温湿度传感器DHT11。 DHT11介绍 DHT11是一款价格便宜,易于使用的温度湿度测量二合一传感器。它具有超小体积、极低功耗的特点。它使用单根总线与单片机进行双向的串行数据传输,信号传... 阅读详情

相关推荐

STM32+OOK通讯(OOK发送+OOK接收)+cubemx配置

关于OOK通信,我的理解就是将要发送的信息转换成高低电平(即0和1),然后接收方通过对01进行解码获得信息。于是我用了非常朴素的字符串转二进制+AM调制来完成通信链。话不多说我们直接开始!!!

qq_73856732的博客 2339

D. Jongmah

原题 题意就是给你n个小于等于m的数让你找出连续的三个数字或者三个相同的数字才能赢问你最大能赢几次这个题解有助于理解这个题晕了我两天多 dp[i][j][k]代表前i个数以i为开头的有j个以i为中间的有k个。 下标对应的图 这里我枚举的是i在开头能组成三元组的个数。 #include <cmath> #include <iostream> #include <cst...

u013345179的博客 424

wsl2 配置ubuntu 固定ip

wsls ubuntu 设置固定ip

musk1212的博客 2616

Jongmah CodeForces - 1110D +DP

Jongmah CodeForces - 1110D +DP

qq_63108111的博客 262

森林冰火人html源码,森林冰火人单人版(源码)

【实例简介】java小游戏——森林冰火人,单人游戏, 实现人物行走,跳跃,吃水晶,具有计时功能,积分功能,倒计时结束游戏失败。【实例截图】【核心代码】森林冰火人单人版├── bin│ ├── game│ │ ├── Help.class│ │ ├── Logon.class│ │ ├── Main.class│ │ ├── Mykey.class│ │ ...

weixin_42507981的博客 6197

保姆级教程:手把手教你用CANoe/CANalyzer读取汽车故障码(UDS 0x19服务实战)

本文提供了一份详细的CANoe/CANalyzer使用教程,指导如何通过UDS 0x19服务读取汽车故障码。从硬件配置到报文构建,再到故障码解析,手把手教你完成汽车诊断全流程,特别适合汽车电子工程师和诊断开发人员。

weixin_42524945的博客 258

Codeforces Global Round 1 D. Jongmah(DP)

D. Jongmah time limit per test3 seconds memory limit per test256 megabytes inputstandard input outputstandard output You are playing a game of Jongmah. You don’t need to know the rules to solve this p...

weixin_43896680的博客 491

【Java面试题汇总】Spring篇(2026版)

IoC、DI、aop、事务、为什么不建议@Transactional、事务传播级别、@Autowired和@Resource注解的区别、BeanFactory和FactoryBean的区别、Bean的作用域,以及默认的作用域、Bean的生命周期、循环依赖、三级缓存、

种一棵树最好的时间是十年前,其次是现在 7372

Codeforces Global Round 1

D. 由于一组连续三个数的情况不会超过3个,因为如果超过3个的话,那么你可以直接归类到每个数取3个就行了 所以一个数被选中为组成连续三个数的情况不会超过6个,所以我们直接f[i][j][k]表示搜到i,且i剩余j个,(i-1)剩余k个的方案数,那么你就直接dp就行了 #include&lt;bits/stdc++.h&gt; using namespace std; const int M...

psc233的博客 177

一文读懂 SAP ICF Services:从 SICF 激活到 ABAP OData V2/V4 安全与实战

本文系统化介绍了ABAP系统中ICF服务的关键概念及实践要点。主要内容包括:ICF服务的核心安全机制,需显式激活才能响应HTTP请求;在SICF中正确激活服务的操作步骤;OData V2/V4服务所需的不同ICF节点配置,如V4统一入口节点/sap/opu/odata4;典型问题如default_host未激活会导致HOST_INACTIVE错误;安全实践包括CSRF防护机制和权限对象(S_ICF_ADM)配置;以及实际案例分析和常见ICF服务节点的功能说明。文章为ABAP开发者与运维人员提供了ICF服务管

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 470

SAP Fiori 从技术上而言到底包含哪些组件?

SAP Fiori是企业级UX设计的系统化解决方案,基于五大原则构建:角色导向(Role-based)、自适应(Adaptive)、简洁(Simple)、一致(Coherent)和愉悦(Delightful)。其技术实现包含SAPUI5开发框架、Fiori Launchpad统一入口、OData服务网关等核心组件,通过标准化设计模式与开发工具链,显著提升企业应用的用户体验和开发效率。典型案例显示,遵循Fiori原则可缩短30%以上的操作时长,降低50%的培训成本。该体系既保持跨设备一致性,又支持业务场景的深

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 223

CF Codeforces Global Round 1 D. Jongmah /*dp*/

CF Codeforces Global Round 1 D. Jongmah /*三元对dp*/ dp,有难度。。。 发现,如果同样的数字很多,一定先取那些一样的配对,所以先计算出每个数有几个,所以可以减少dp的范围。 因为3个[i,i+1,i+2]可以转换为[i,i,i],[i+1,i+1,i+1],[i+2,i+2,i+2]。dp的时候对于一个三元对[i,i+1,i+2]只...

Rshs 421

仿真系列专栏介绍

大家好!欢迎来到我的仿真学习系列专栏!这是一个我在学习仿真技术过程中整理和分享的系列文章。作为一名正在不断学习和实践的工程师,我希望通过这个专栏,和大家一起探索仿真技术,尤其是在高速信号完整性方面的应用。

案例文章,高速信号 368

Codeforces Global Round 1D. Jongmah(巧妙DP)

题目链接:http://codeforces.com/contest/1110/problem/D 题目大意: 题目大意:给定若干块有类型的砖块, 要求类型序号连续的三元组和序号相同的三元组可以组成一个, 问给定的类型序列最多可以组成多少块。 题目分析:  题目分析:这道题的DP思维感觉还是蛮巧妙的, 也是我没有见过的一种划分状态的方法。 在比赛中我是想贪心看看的,无奈有一种情况即样...

满月照亮的路 458

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Codeforces Global Round 1 D. Jongmah(DP思维)

题意:   一些数字,有两种方式组成一个三元组,[x,x,x],[x,x+1,x+2],每个数字只能用一次,求最多组成多少三元组。 分析:   因为每三个[x,x+1,x+2]是可以拆成[x,x,x],[x+1,x+1,x+1],[x+2,x+2,x+2]的,所以可以认为对于以x开始的[x,x+1,x+2]最多有两个。   于是可以dp[i][x][y]表示到第i个数字,存在x个[i-1,...

luguoshan的博客 176

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Codeforces Global Round 1 - D. Jongmah(动态规划)

Problem Codeforces Global Round 1 -D. Jongmah Time Limit: 3000 mSec Problem Description Input Output Print one integer: the maximum number of triples you can form. Samp...

weixin_30517001的博客 190

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Codeforces Global Round 1 D. Jongmah

题目链接:D. Jongmah 题目大意:一些数字,有两种方式组成一个三元组(三角形),[x,x,x],[x,x+1,x+2],(刻子或顺子)每个数字只能用一次,求最多组成多少三元组。 思路:显然3个顺子和3个刻子对结果的贡献一样,即3组[i,i+1,i+2]和[i,i,i],[i+1,i+1,i+1],[i+2,i+2,i+2]对答案的贡献一样。所以我们不妨假设每个以i为开头的三元组[i,i...

风花雪月流残败局 263

Codeforces Global Round 1-D. Jongmah

地址:https://codeforces.com/contest/1110/problem/D 思路:DP,唉,我好菜啊,这么简单的DP愣是写不出来QAQ 大佬博客:https://www.cnblogs.com/pkgunboat/p/10356117.html 解析:首先记录每个数的个数a[x], 容易推出(x, x + 1, x + 2)的个数最多只有2个 dp[i][j][k...

随风而行的博客 311

Codeforces Global Round 1 D - Jongmah

题目链接:http://codeforces.com/contest/1110/problem/D 题意:给你两个整数n、m,表示:给你n个整数,每个整数的范围都在[1 , m]。现在可以将三个数值相同的数(如:777)或者三个数值连续的数(如:123,但112不算)组成一个三元组,问这n个数最多能组多少个三元组?(每个数最多只能用在一个三元组中) 因为3个连续三元组可以转换成三个相同数值的三元...

凝望的博客 301

CodeForces Global Round 1

CodeForces Global Round 1 CF新的比赛呢(虽然没啥区别)!这种报名的人多的比赛涨分是真的快。。。。 所以就写下题解吧。 A. Parity 太简单了,随便模拟一下就完了。 B. Tape 显然就是先找一个长的把所有的全部覆盖,然后可以在上面丢掉\(k-1\)段间隙。 那么把两两之间的间隙长度拿出来排序就可以了。 C. Meaningless Operations 如果\(...

weixin_30443813的博客 183

Codeforces Global Round 1 (A-E题解)

Codeforces Global Round 1 题目链接:https://codeforces.com/contest/1110 A. Parity 题意: 给出{ak},b,k,判断a1*b^(k-1)+a2*b^(k-2)+...+ak*b^0的奇偶性。 题解: 暴力求模2意义下的值就好了。 代码如下: #include <bits/stdc+...

dft539533的博客 333

Codeforces Global Round 1 (D、E)

CF补题

calm1_1的博客 180

Codeforces Global Round 1 A--E

A. Parity /** 题意:进制转换,判结果奇偶 */ #include&lt;bits/stdc++.h&gt; #define ll long long using namespace std; int main (){ int b,k,ans=0;cin&gt;&gt;b&gt;&gt;k; for(int i=0;i&lt;k;i++){ int...

布呗之路 393

Codeforces Global Round 1D. Jongmah

CF

m0_61104183的博客 226
上一篇: UESTC - 1636 梦后楼台高锁,酒醒帘幕低垂(枚举+最小生成树)
下一篇: Codeforces Global Round 1 E. Magic Stones(思维+差分技巧)
小衣同学
博客等级 码龄9年 1444粉丝 995原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小衣同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值