HDU 2604 Queuing

使用 AFL++ 对 IoT 二进制文件进行模糊测试 - 第一部分 American fuzzy lop 是一款面向安全的模糊测试器,它采用一种新型的编译时插桩和遗传算法,可以自动发现干净、有趣的测试用例,从而触发目标二进制文件中新的内部状态。这显著提高了模糊测试代码的功能覆盖率。AFL 的地址是它已经有一段时间没有更新了。虽然 AFL 仍然运行良好,但有一个新项目 AFL++,它是 AFL 的一个分支,包含许多改进和新功能。AFL++ 的地址是,其源代码位于。在本文中,我们将研究如何使用 AFL++ 对 IoT 二进制文件进行模糊测试。 阅读详情

Queuing
Time Limit:5000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u

Description

Queues and Priority Queues are data structures which are known to most computer scientists. The Queue occurs often in our daily life. There are many people lined up at the lunch time. 

  Now we define that ‘f’ is short for female and ‘m’ is short for male. If the queue’s length is L, then there are 2  L numbers of queues. For example, if L = 2, then they are ff, mm, fm, mf . If there exists a subqueue as fmf or fff, we call it O-queue else it is a E-queue. 
Your task is to calculate the number of E-queues mod M with length L by writing a program. 
 

Input

Input a length L (0 <= L <= 10  6) and M.
 

Output

Output K mod M(1 <= M <= 30) where K is the number of E-queues with length L.
 

Sample Input

     
3 8 4 7 4 8
 

Sample Output

     
6 2 1
 

分析
dp
状态转移方程的推导
计算f(n)时,当第 n 位为 m 时,对前面无影响,所以记f1 = f(n-1),当第 n 位为 f 时,观察后两位,不论后两位为 mf 还是 ff 都会对前面产生限制,继续观察后三位,若后三位为 fff 和 fmf 时不满足条件,当结尾为 mmf 时对前面无影响,记 f2 = f(n-3),当结尾为 mff 时,对前面产生限制,继续观察后四位,mmff和fmff中,只有mmff符合条件且不会对前面产生影响,记 f3 = f(n-4)。至此,所有可能的条件都已经找齐,所以 f(n) = f1 + f2 + f3,即 f(n) = f(n-1) + f(n-3) + f(n-4)。

矩阵快速幂
构造的矩阵A为 4*4 的矩阵,如下
0 1 0 0
0 0 1 0
0 0 0 1
1 1 0 1
要求 f(n),只需乘 n-3 次即可。

AC代码如下

#include<cstdio>
#include<cstring>
#define maxn 4
using namespace std;
struct S
{
    int m[4][4];
};
int a[maxn];
int l,m;

S mul(S a,S b)
{
    S c;
    memset(c.m,0,sizeof(c.m));
    for(int i = 0 ; i < 4 ; i++)
        for(int j = 0 ; j < 4 ; j++)
        {
            for(int k = 0 ; k < 4 ; k++)
                c.m[i][j] += a.m[i][k] * b.m[k][j];
            c.m[i][j] %= m;
        }
    return c;
}

S quick_power(S a,int k)
{
    if(k == 1) return a;
    else if(k & 1) return mul(quick_power(a,k-1),a);
    else
    {
        S c = quick_power(a,k >> 1);
        return mul(c,c);
    }
}

int main()
{
    a[0] = 1,a[1] = 2,a[2] = 4,a[3] = 6;
    S c;
    for(int i = 0 ; i < 4 ; i++)
        if(i == 2) c.m[3][i] = 0;
        else c.m[3][i] = 1;
    for(int i = 0 ; i < 3; i++)
        for(int j = 0 ; j < 4; j++)
        {
            if(j == i + 1) c.m[i][j] = 1;
            else c.m[i][j] = 0;
        }
    while(~scanf("%d%d",&l,&m))
    {
        if(l < 4)
        {
            printf("%d\n",a[l]%m);
            continue;
        }
        S b = quick_power(c,l-3);
        int ans = 0;
        for(int i = 0 ; i < 4 ; i++)
            ans += (b.m[3][i] * a[i]) % m;
        printf("%d\n",ans%m);
    }
    return 0;
}


⭐️VMwareWorkstation17.0虚拟机安装搭建Windows 7虚拟机(完整图文详细步骤含配置VMware Tools教程) 本教程为大家提供了从安装VMware Workstation 17.0开始,到在虚拟机上成功搭建Windows 7专业版系统的完整步骤。我们详细介绍了准备阶段所需的软件和硬件要求,以及在VMware中配置和安装Windows 7系统的每一步操作。此外,我们还特别提到了如何在虚拟机上配置VMware Tools,以便更好地与宿主机进行交互。 通过本教程的学习,读者不仅能够掌握在VMware Workstation 17.0上安装Windows 7虚拟机的技能,还能了解到如何配置虚拟机的硬件以及安装VMwar 阅读详情

相关推荐

一文看懂—Agent多智能体协作

多智能体协作已成为AI应对复杂任务的关键范式,通过模拟人类团队分工,实现专业化、高效化和纠错能力。本文系统阐述了多智能体协作的核心概念(智能体分工、工作流编排、工具使用)、与产品规划的关联(任务拆解、错误处理、组织架构设计),以及典型应用场景(报告生成、客服工单、学习规划)。同时剖析了常见陷阱(循环卡死、信息失真、成本失控)及解决方案,并提供了实用工具模板(角色定义卡、工作流画布、成本仪表盘)。最后通过市场竞品分析和旅行规划两个实战案例,展示了多智能体协作的实际价值。该技术正推动AI从单点智能迈向系统智能,

lee006006的博客 1033

HDU - 2604 Queuing 矩阵快速幂

题目大意:有2^L个长度为L的字符串,字符串只能有f或m组合而成,问这些字符串中不含有fmf或着fff的字符串有多少个解题思路:设f(n)为字符串长度为n,且字符串中不包含fmf或者fff的字符串个数 假设现在填到第n位了,最后一个字符如果填的是m的话,那么f(n-1)的都可以填 最后一位填的如果是f的话,这就要考虑一下了,最后三位的话只可能是mmf,mff,fff,fmf,排除掉fff,fmf

静静地码 778

playwright-mcp 安装使用的详细教程

Playwright MCP 快速入门指南 Playwright MCP Server 是由微软开发的浏览器自动化服务,通过 MCP 协议为 AI/Agent/LLM 提供网页交互能力。它基于可访问性树而非屏幕截图,支持多种浏览器和运行模式。 安装要求: Node.js v18+ 命令行操作能力 支持 MCP 的客户端 安装方式: 通过 npx 快速启动:npx @playwright/mcp@latest 项目依赖安装:npm install @playwright/mcp 主要特性: 支持 Chrome

上善若水 7997

hdu 2604(矩阵快速幂)

题意:f和m两种字母,给出l表示有2^l个由f和m组成长度为l的字符串,如果这些字符串内包含fmf或fff子串的是一种特殊字符串,给出l问不是特殊字符串的数量是多少。 题解:先暴力把前几个l的答案跑了一下,发现有个规律f(n) = f(n - 1) + f(n - 3) + f(n - 4),试着用这个公式写了矩阵快速幂交上去过了,但后来发现这个规律是有原因的,如果以m为最后一个字符的答案有f(n

俯瞰风景 710

Android应用隐私合规自动化检测:Frida与Camille实战指南

在移动应用安全与隐私合规领域,动态代码插桩技术已成为核心检测手段。其原理是通过运行时注入,实时监控和修改应用行为,从而绕过传统静态分析的局限。这项技术的核心价值在于能够精准捕获应用在运行时的敏感数据调用与网络传输行为,为隐私合规审计、安全测试提供直接证据。在实际应用场景中,它尤其适用于自动化检测违规收集个人信息、追踪数据流向等任务。本文聚焦于利用Frida这一动态插桩框架,结合Camille隐私合规检测工具集,构建自动化监控环境。通过注入JavaScript代码,实现对Android敏感API(如获取设备标

weixin_34254464的博客 388

Windows Server 2019整机备份与异机还原实战:从虚拟机到物理机的完整迁移指南

本文详细介绍了Windows Server 2019整机备份与异机还原的实战操作,涵盖从虚拟机到物理机的完整迁移流程。通过环境准备、备份策略设计、具体操作步骤及迁移后优化等内容,帮助用户实现系统环境的无缝迁移,特别适用于服务器硬件升级、数据中心迁移等场景。

weixin_30555125的博客 133

HDU 2604 Queuing,矩阵快速幂

题目地址:HDU 2604 Queuing 题意:  略 分析: 易推出:   f(n)=f(n-1)+f(n-3)+f(n-4) 构造一个矩阵:  然后直接上板子: /* f[i] = f[i-1] + f[i-3] + f[i-4] */ #include #include using namespace std; const int

天亮说晚安 1681

Unsloth Desktop 本地大模型微调量化实战指南

大语言模型的本地化定制正在成为开发者与内容创作者的重要需求,而微调与量化则是其中最关键的两项技术。LoRA 与 QLoRA 通过仅训练少量低秩矩阵,大幅降低显存占用和训练成本,让消费级 GPU 也能完成模型适配;GGUF 格式则打通了训练与推理的边界,使微调后的模型可直接接入 Ollama、llama.cpp 等主流推理引擎。本文以 Unsloth Desktop 为切入对象,从其底层加速原理出发,梳理了环境准备、模型加载、对话测试、量化导出、微调验证及 API 批量调用的完整链路,并针对显存优化、端口冲突

weixin_29055137的博客 397

hdu 2604 queuing

//f(n)=f(n-1)+f(n-3)+f(n-4) //找出了递推公式,相应的矩阵也好构造了, //f(n) 1 0 1 1 f(n-1) //f(n-1) =1 0 0 0 * f(n-2) //f(n-2) 0 1 0 0 f(n-3) //f(n-3) 0 0 0 1 f(n-4) //接着便是二分法求矩阵的幂了 #include #include

meng_zy的专栏 607

高精地图语义分割标注

什么是语义分割?语义分割与目标检测的区别?语义分割的关键应用场景有哪些?高精地图语义分割标注的难点?

weixin_52509513的博客 1646

DISM进行系统修复,进度条卡在63.2%的解决方法

一时用不了软件,安装修复的时候也出现问题 DISM一直卡在63.2%,等了好久时间,直接强制退出寻找最终的解决方案

码农研究僧的博客 1万+

HDU 2604 Queuing (矩阵快速幂)

HDU 2604 Queuing (矩阵快速幂) ACM 题目地址:HDU 2604 Queuing 题意:  n个人排队,f表示女,m表示男,包含子串‘fmf’和‘fff’的序列为O队列,否则为E队列,有多少个序列为E队列。 分析:  矩阵快速幂入门题。  下面引用巨巨解释: 用f(n)表示n个人满足条件的结果,那么如果最后一个人是m的话,那么前n-1个满足条

水果君の日常 5740

STM32实战开发(110):基于STM32的智能地震监测系统开发

地震监测系统是自然灾害预警体系中至关重要的一部分。随着地震灾害的频发和对自然灾害预测精度要求的提高,智能地震监测系统逐渐成为研究的热点。STM32作为一款高性能的微控制器,凭借其强大的处理能力和丰富的外设接口,在地震监测领域中得到了广泛应用。本篇文章将详细介绍如何使用STM32实现一个智能地震监测系统的开发过程,涵盖硬件设计、软件编程、系统实现及相关代码。通过集成加速度传感器、地震数据采集、实时数据处理和无线数据传输功能,我们可以设计一个高效、稳定的智能地震监测系统。

2201_76125393的博客 710

HDU 2604 Queuing (矩阵快速幂)

题目 HDU 2604 Queuing 题意: 给你一个数\(L\)代表一个队的长度,男女不限,随便排,\(f\)代表女生,\(m\)代表男生,但是其中不能出现\(fmf\),\(fff\) 这种子序列,问一共有多少种排的方法,结果需要\(mod m\). 解析: 构思巧妙的一道矩阵快速幂 我们设\(f[i]\)表示有\(i\)个人时有多少种方案。 我们考虑第\(n\)个位置 假设第\...

150

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

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

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

Queuing HDU - 2604(矩阵快速幂)

Queuing 题目链接:HDU - 2604 题意:由f, m组成的长度为L的字符...

Sirius_han的博客 268

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

[矩阵快速幂]hdu2604 Queuing

hdu2604 Queuing 题意: f代表女性,m代表男性,排成纵队,长度为L的队列方案数有2^L种,如果某个队列存在"fmf"或"fff"子队列,那么这个队列是O-queue,否则是E-queue 求E-queue的数目%MOD后的值 思路: 用f(n)表示n长度的E序列数目,此题倒推 如果最后一位是m,前面无限制,求f(n-1)即可 如果最后一位是f,前面有限制,往前推一

soundwave_的博客 630

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

HDU - 2604 Queuing解题报告

寒假训练赛第五题

薛崇祥的博客 721

hdu 2604 Queuing(状态压缩递推,矩阵)

hdu 2604 Queuing 和

yjCola 574

HDU:2604 Queuing(发现似乎所有…

此题的题意是求出长度为L的 ,有f 和m 组成的窜中找出没有存在 fmf 和fff 的窜的个数   求解f[n]=f[n-1]+f[n-3]+f[n-4];我们就可以构造出这样的 矩阵 Queuing(发现似乎所有递推题都可以用矩阵乘法来做)" TITLE="HDU:2604 Queuing(发现似乎所有递推题都可以用矩阵乘法来做)" /> Queuing(发现似乎所有递推题都可

算法之道 365

HDU 2604 Queuing,矩阵高速幂

题目地址:HDU 2604 Queuing 题意:  略 分析: 易推出:   f(n)=f(n-1)+f(n-3)+f(n-4) 构造一个矩阵:  然后直接上板子: /* f[i] = f[i-1] + f[i-3] + f[i-4] */ #include&lt;cstdio&gt; #include&lt;cstring&gt...

weixin_34335458的博客 97

天天写算法之HDU 2604 Queuing

膜拜一波大神代码分析:矩阵快速幂题目地址:HDU 2604 Queuing题意: n个人排队,f表示女,m表示男,包含子串‘fmf’和‘fff’的序列为O队列,否则为E队列,有多少个序列为E队列: 矩阵快速幂入门题。  用f(n)表示n个人满足条件的结果,那么如果最后一个人是m的话,那么前n-1个满足条件即可,就是f(n-1); 如果最后一个是f那么这个还无法推出结果,那么往前再考虑一位:那么后三...

qq_36616268的博客 205

hdu_2604Queuing(快速幂矩阵)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2604 Queuing Time Limit: 10000/5000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4428Accepted Submission(s): 1...

weixin_30748995的博客 126

HDU-2604 Queuing (矩阵快速幂 + 递推思想 + 通用版 )

HDU-2604 Queuing (矩阵快速幂 + 递推思想  + 通用版 )QueuingTime Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionQueues and Priority Queues are data structures whic...

碳酸钙的01妖精的博客 260

【HDU】2604 - Queuing(递推 & 思维 & 矩阵构造 & 快速幂)

点击打开题目 Queuing Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4683    Accepted Submission(s): 2067 Problem Description Que

wyg1997 677

hdu 2604 Queuing

点击打开hdu 2604 思路: 递推+矩阵快速幂 分析; 1 根据题目的意思,我们可以求出F[0] = 0 , F[1] = 2 , F[2] = 4 , F[3] = 6 , F[4] = 9 , F[5] = 15 2 那么根据上面前5项我们可以求出n &gt;= 5的时候 F[n] = F[n-1]+F[n-3]+F[n-4] 那么我们就可以构造出矩阵 | 1 0 1 1 ...

我是传奇 217
上一篇: HDU 1575 Tr A
下一篇: HDU 2050 折线分割平面
zf______
博客等级 码龄11年 6粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值