例10-6 uva1635(唯一分解定理)

CTFShow萌新区全攻略:从密码破解到Web渗透的实战解析 本文为CTFShow萌新区新手提供从密码破解到Web渗透的完整实战攻略。文章深入解析了密码学、隐写术、杂项和Web安全四大核心方向,分享了实用的解题工具、思维方法和绕过技巧,旨在帮助初学者建立系统的安全竞赛解题体系,而不仅仅是提供一份题解(WP)。 阅读详情

题意:给定n个数a1,a2····an,依次求出相邻两个数值和,将得到一个新数列,重复上述操作,最后结果将变为一个数,问这个数除以m的余数与那些数无关?


思路:最后观察期规律符合杨辉三角,那么,问题就可以变成判断C(0,n-1),C(1,n-1)。。。。C(n-1,n-1)哪些是m的倍数,所以只需考虑m唯一分解后在C(i,n-1)中的情况

公式:C(k,n)=(n-i+1)*c(i-1,n)/k. 然后利用递推公式检查m的因子,只要(n-i+1)/i是m倍数即可


#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <map>
#include <vector>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;

int pm[1000],nm[1000];
int cur;


void ini(int m)       //分解m
{
    cur = 0;
    memset(pm,0,sizeof(pm));
    memset(nm,0,sizeof(nm));
    for(int i = 2; i*i <= m ; i ++)
    {
        if(m % i == 0)
        {
            pm[cur] = i;
            while(m % i == 0)
            {
                m /= i;
                nm[cur]++;
            }
            cur++;
        }
    }
    if(m > 1)
    {
        pm[cur] = m;
        nm[cur++] = 1;
    }
}

bool can_do(int x,int y)       //检查因子
{
    bool flag=true;
    for(int i=0; i<cur; ++i)
    {
        while((x%pm[i]==0) && (x/=pm[i]))
            nm[i]--;
        while((y%pm[i]==0) && (y/=pm[i]))
            nm[i]++;
        if(nm[i]>0)
            flag=false;
    }
    return flag;
}
int ans[100050];

int main()
{
    int m,n;
    while(~scanf("%d%d",&n,&m))
    {
        ini(m);
        int tot = 0;
        for(int i = 1; i <= n; i++)
        {
            if(can_do(n-i,i))   //n-i  =  (n-1)-i+1
            {
                ans[tot++] = i+1;
            }
        }
        printf("%d\n",tot);
        if(tot !=  0)
        {
            for(int i = 0; i < tot-1; i++)
                if(ans[i])
                    printf("%d ",ans[i]);
            printf("%d",ans[tot-1]);

        }
        printf("\n");
    }
    return 0;
}


LVGL的基础知识总结 另外,还有自定义字库的使用,具体可参考开发手册。 阅读详情

相关推荐

软件工程导论考试通关秘籍:太原理工大学历年真题解析(附答案)

本文为太原理工大学《软件工程导论》考试提供高效备考指南,通过解析近六年真题,揭示高频考点如软件生命周期、UML建模和结构化设计等核心模块的命题规律。文章提供真题拆解、实战策略和避坑指南,帮助考生掌握图形转换题和简答题的应答技巧,助力考试通关。

weixin_29233333的博客 227

UVA-1635(数论)(二项式定理性质+递推+唯一分解定理)

题意:给定n个从1递增的数,将这些数两两相加从而得到一个最终的数,并将该数对m取余,问该余数与哪些数无关? 题解:无关即该数前面的系数是m的倍数即可。 多些几组数据容易发现该数列的系数是一个二项式系数,又因为该数过于大不能直接表示,故可以用唯一分解定理来辨别,另辨别的时候用到了二项式定理的递推式。 hint:可能是因为用到了map的原因,还有就是循环里面写的内容太多了,跑了2000多ms,还是满惊...

白衣少年郎 563

CKAD-CN 考试知识点分享(12) Secret - 1

步骤操作完成1提取 Deployment 中的硬编码 Secret 值✅2创建名为postgres的 Secret✅3修改 Deployment 使用引用 Secret✅4验证新 Pod 正常运行✅❌未删除原 Deployment✅(遵守要求)✅任务完成。敏感信息已从环境变量移出,安全地存储在 Kubernetes Secret 中。

轻的博客 632

UVA 1635-Irrelevant Elements(唯一分解定理)

原题链接:点击打开链接 题意:给定n个数a1,a2····an,依次求出相邻两个数值和,将得到一个新数列,重复上述操作,最后结果将变为一个数,问这个数除以m的余数与那些数无关?例如n=3,m=2时,第一次得到a1+a2,a2+a3,在求和得到a1+2*a2+a3,它除以2的余数和a2无关。1= 思路: 1、首先我们可以发现对于给定的n其实每项的系数就是C(n-1,i-1),所以我们只

魔笛手的博客 623

智能能效管家:基于 ESP32 的智能插座设计与精细化功耗管理实现

针对传统插座无法远程控制、功耗监测缺失、能源浪费严重等问题,本文设计一款基于 ESP32 主控芯片的智能插座。该系统集成 WiFi 无线通信、交流功耗采集、继电器通断控制模块,实现四大核心功能。硬件采用模块化选型与安全接线设计,软件基于 Arduino-ESP32 框架开发,搭载 Mqtt 通信协议与功耗算法,可通过手机 / 云端实时管控设备,有效提升用电安全性与能源利用率。:ESP32;智能插座;功耗管理;远程控制;能耗监测。

weixin_42300449的博客 101

把 ABAP 选择屏幕 Selection Screen 打造成可维护的交互面板:常用屏幕元素与动态控制全解析

本文详细介绍了ABAP报表中Selection Screen的设计技巧,包括空行(SKIP)、横线(ULINE)、注释(COMMENT)等基础元素的使用方法,以及如何通过MODIF ID实现动态界面调整。重点讲解了行内布局(BEGIN OF LINE)、按钮(PUSHBUTTON)和区块(BLOCK)等高级功能,帮助开发者将选择屏幕从"能用"提升到"好用、易扩展、可维护"的水平。文章还分享了项目实践中的命名规范和分组策略,特别适合需要优化ABAP报表用户体验的开发人员

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

uva1635

学到 1.如何得到一个数的因数, 2.对于二项式的算法 此题困扰了好久,1处是考虑欠缺,只想着快点减枝,忽略了每个数据是相关的,不可提前减枝。 第2处始终没有明白,为什么不可以使用c(i,n)=c(n-i,n); 就是 for(i=1;i&amp;lt;=a/2;i++) {if(check(a-i,i)){anall[++ans]=i+1;if((i+1)!=(a-i))anall[++ans]=a-i...

qq_43235540的博客 316

OpenClaw实战系列10(完结篇):企业级应用实战案例——从0到1搭建智能客服系统

本文以一家跨境电商公司为例,从需求分析、系统设计、分步搭建到上线运营,完整呈现智能客服系统的落地全过程。所有配置命令和截图均来自实测环境,你可以直接复制使用。

PeterPan的博客 1305

UVA 1635 Irrelevant Elements(杨辉三角+递推式求组合数+算数基本定理)

题目大意:        1.输入n 和 m, n个数为任意的a1, a2, a3, ...., an,利用杨辉三角的求算方式将这n个数不断加和,求到最后只有一个数        2.然后用最后的和对m 取余数,问哪一个数与m的余数没有关系 解题思路:       1.把题目看懂的大概思路就是求出这n个数的杨辉三角的系数,然后看这里面的哪一个数,是m的因子,(因为如果是的话那么它乘上ai也

江河湖海 493

【知识图谱】实践篇——基于知识图谱的《红楼梦》人物关系可视化及问答系统实践:part2知识获取与图谱构建、服务搭建

前序文章:其中原项目提供了关系数据如下: 其中五列数据表示:人物1,人物2,人物1与人物2关系,人物1所属家族,人物2所属家族。关系说明:以第一列为例,贾演是贾代化的父亲。下面我们就将这个数据放到neo4j中。这些需要去连接,需要安装这个包: 程序中,我使用去读取配置文件, 其中为了保持配置全局唯一性,使用单例的写法。 后面就是创建构建关系文件,构建neo4j图谱数据了,如下: 后期可能会将构建图谱内容使用flask去生成命令行的方式构建,暂时在开发的过程查看构建情况,便于调试。导入关系后,我们再查看

让算法融入生活,改变生活! 4081

Python爬虫抓取淘宝商品详情页信息:从入门到高级技术应用

通过本篇博客,我们了解了如何使用Python爬虫抓取淘宝商品详情页的信息,如何使用requests和Selenium抓取静态和动态内容,如何应对淘宝的反爬虫机制,如何将抓取的数据保存到CSV文件等。随着爬虫技术的不断发展,开发者可以根据需要选择合适的工具和技术,如使用分布式爬虫框架提高抓取效率,或者利用OCR技术处理验证码等问题。在进行淘宝爬虫时,需要注意遵循相关法律法规和平台的爬虫政策,避免对平台造成过度的负担或侵犯其合法权益。

2201_76125261的博客 461

【刷题记录】 UVA-1635 Irrelevant Elements 组合数+唯一分解定理

给你n和m ,求(C(n-1,0)*a1+ C(n-1,1)*a2 + .........C(n-1,n-1)*an )%m中,对结果无贡献的位置。已知ai

这里是阿安的博客 314

手把手教你五种方案配置Obsidian免费同步,全平台通用(支持Alist/OpenList)

Obsidian是一款优秀的Markdown笔记工具,但官方同步服务每年近700元让人望而却步💸 本文整理了5种免费同步方案,涵盖苹果生态专属方案、多网盘插件同步、版本管理同步、点对点同步、自建实时同步等不同场景📱💻 每种方案都附有详细配置步骤,助你找到最适合的同步方式✨

XiaoqiangClub的博客 1832

uva1635 Irrelevant Elements(唯一分解定理)

题目链接:点击打开链接 题意:给定n个数a1,a2····an,依次求出相邻两个数值和,将得到一个新数列,重复上述操作,最后结果将变为一个数,问这个数除以m的余数与那些数无关?例如n=3,m=2时,第一次得到a1+a2,a2+a3,在求和得到a1+2*a2+a3,它除以2的余数和a2无关。1= 解题思路: 1、首先我们可以发现对于给定的n其实每项的系数就是C(n-1,i-1),所以我

Crazy_Bear 2266

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

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

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

UVA 1635 Irrelevant Elements (唯一分解定理+组合数的递推公式)

UVA 1635 Irrelevant Elements (唯一分解定理+组合数的递推公式) 给出n个数a1,a2,…,an,相邻两个数两两相加直到合并成一个数A,问A/m的结果与a1,a2,…,an哪些数无关。 显然题目要找的是对于A=c1a1+c2a2,…,cnan,有哪些ai前面的系数是可以被m整除的。 且可以发现对于ai前面的系数ci=C(n-1,i-1),因为当n较大时,组合数会很大以至于long long都存不下,所以可以根据组合数的递推公式,得到组合数的素因子分解式,来判断当前系数是否可以被m

WedsonLin的博客 267

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

UVA1635 Irrelevant Elements —— 唯一分解定理 + 二项式定理

题目链接:https://vjudge.net/problem/UVA-1635 题解: …… 代码如下: #include #include #include #include #include #include #include #include #include #include #include #include using namespac

A man can be destroyed, but not defeated. 413

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

剑指offer:C++【UVA 1635】无关的元素 排列组合数的应用及唯一分解定理

问题 A(2716): 无关的元素 时间限制:1 Sec内存限制:128 MB 题目描述 对于给定的n个数a1,a2,...,an,依次求出相邻两数之和,将得到一个新数列。重复上述操作,最后结果将变成一个数。问这个数除以m的余数与哪些数无关? 例如n=3,m=2时,第一次求和得到a1+a2,a2+a3,再次求和得到a1+2a2+a3,它除以2的余数和a2无关。 输入 第1行:...

C20200521的博客 316

uva 1635 Irrelevant Elements [组合数, 唯一分解定理]

uva1635 Irrelevant Elements; 唯一分解定理; 组合数; Young cryptoanalyst Georgie is investigating different schemes of generating random integer numbers ranging from 0 to m − 1. He thinks that standard random number generators are not good enough, so he has invented

xxxxx 1316

信奥中的数学:唯一分解定理

唯一分解定理 唯一分解定理_A_Pathfinder的博客-优快云博客_唯一分解定理 唯一分解定理 详解(C++) 唯一分解定理 详解(C++)_唐家三少的博客-优快云博客_唯一分解定理c++ 10247: 爱好数学的国王(唯一分解定理) 10247: 爱好数学的国王(唯一分解定理)_Vitamin_R的博客-优快云博客 UVa 10375 Choose and divide (唯一分解定理) UVa 10375 Choose and divide (唯一分解定理)_aa44

青少年趣味编程 827

Irrelevant Elements UVA - 1635 二项式定理+唯一分解定理

 n个数 一层一层往下加就会形成类似杨辉三角形的形状 到了最后一行 系数呈现二项式定理分布 从 C(n-1,0)到C(n-1,n-1) 又因为m至少为2 所有C(n-1,0) C(n-1,n-1)可以不用算  又因为公式C(n,k)=(n-k+1)/kC(n,k-1)可用用递推关系算 只要在前一个的基础上乘以那个递推系数     #include&lt;bits/stdc++.h&gt; u...

Bug___Maker的博客 432

uva1635(唯一分解定理,杨辉三角二项式递推公式)

/* translation: 题意见lrj,p320 solution: 唯一分解定理,杨辉三角迭代公式 根据杨辉三角的迭代公式即可很容易得出最后一项的每一项系数。根据是否能够整除m,就可以得出这一项是否跟 最后的结果有关。但是问题在于最后一项的数据范围太大,必须用高精度才能保存。所以直接对m取余来求解是行 不通的。所以就必须用唯一分解定理:对m进行素因子分解,然后对于每一项m的素因

林伏案的博客 1403

唯一分解定理应用+组合数学

题目:UVA 1635 题目大意: 对于给定的n个数a1,a2,a3....an,一次求出相邻两个数之和,将得到一个新的数列。重复上述操作,最后结果将变成一个数。问这个数除以m的余数与那些数无关?例如n=3,m=2时,第一次求和结果a1+a2,a2+a3,在求和a1+2a2+a3,它除以2的余数和a2无关,1<=n<=10^5,2<=m<=10^9 分析...

acs59147的博客 193

UVa 1635 Irrelevant Elements (唯一分解定理 & 组合数学)

题目 题目大意 对于给定的\(n\)个数\(a_1\), \(a_2\), ···, \(a_n\), 依次求出相邻两数之和, 将得到一个新数列。重复上述操作, 最后结果将变成一个数。问这个数除以\(m\)的余数将与哪些数无关? 例如\(n = 3\), \(m = 2\)时, 第一次求和得到\(a_1 + a_2\), \(a_2 + a_3\), 再求和得到\(a_1 + 2a_2 ...

aa445354403的专栏 156
上一篇: 例10-5 uva12716
下一篇: 10-8 uva1262密码
Tyuio28
博客等级 码龄11年 12粉丝 279原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值