UVA 1635 Irrelevant Elements
https://vjudge.net/problem/UVA-1635
题意:n个数,每相邻两个求和,最后变成1个数,问这个数除m的余数与第几个数无关
n个数使用次数分别为C(n-1,i) i∈[0,n-1]
对m分解质因数
同行内递推C(n-1,i),
累计答案的时候,只考虑C(n-1,i)分解质因数的结果 能否 将m的质因数 抵消
#include<cmath>
#include<cstring>
#include<cstdio>
#define N 100001
using namespace std;
int p[N],summ[N];
int ans[N];
int main()
{
int n,m,t,a,b,cnt;
while(scanf("%d%d",&n,&m)!=EOF)
{
p[0]=ans[0]=0;
memset(summ,0,sizeof(summ));
t=sqrt(m);
for(int i=2;i<=t;i++)
if(m%i==0)
{
p[++p[0]]=i;
while(m%i==0)
{
m/=i;
summ[p[0]]++;
}
}
if(m>1) p[++p[0]]=m,summ[p[0]]=1;
cnt=p[0];
for(int i=1;i<n-1;i++)
{
a=n-i; b=i;
for(int j=1;j<=p[0];j++)
{
if(a%p[j]==0)
{
while(a%p[j]==0)
{
a/=p[j];
summ[j]--;
if(!summ[j]) cnt--;
}
}
if(b%p[j]==0)
{
while(b%p[j]==0)
{
b/=p[j];
summ[j]++;
if(summ[j]==1) cnt++;
}
}
}
if(!cnt) ans[++ans[0]]=i+1;
}
printf("%d\n",ans[0]);
for(int i=1;i<ans[0];i++) printf("%d ",ans[i]);
if(ans[0]) printf("%d",ans[ans[0]]);
printf("\n");
}
}
UVA 1635 Irrelevant Elements的更多相关文章
- UVa 1635 - Irrelevant Elements(二项式系数 + 唯一分解定理)
链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
- UVa 1635 - Irrelevant Elements-[分解质因数]
Young cryptoanalyst Georgie is investigating different schemes of generating random integer numbers ...
- Irrelevant Elements UVA - 1635 二项式定理+组合数公式+素数筛+唯一分解定理
/** 题目:Irrelevant Elements UVA - 1635 链接:https://vjudge.net/problem/UVA-1635 题意:給定n,m;題意抽象成(a+b)^(n- ...
- POJ2167 Irrelevant Elements
Time Limit: 5000MS Memory Limit: 65536KB 64bit IO Format: %lld & %llu Description Young cryp ...
- POJ 2167 Irrelevant Elements 质因数分解
Irrelevant Elements Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 2231 Accepted: 55 ...
- UVa 1635 (唯一分解定理) Irrelevant Elements
经过紫书的分析,已经将问题转化为求组合数C(n-1, 0)~C(n-1, n-1)中能够被m整除的个数,并输出编号(这n个数的编号从1开始) 首先将m分解质因数,然后记录下每个质因子对应的指数. 由组 ...
- Irrelevant Elements, ACM/ICPC NEERC 2004, UVa1635
这种题目最重要的是思路了清晰 #include <cstdio> #include <cstring> ;//sqrt(n)+1 is enough ][]; ]; int a ...
- UVA1635 Irrelevant Elements(唯一分解定理 + 组合数递推)
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=51196 紫书P320; 题意:给定n个数a1,a2····an,依次求出相邻 ...
- UVa1635 - Irrelevant Elements
通过观察发现其规律符合杨辉三角 需要注意的是最后ai的系数是C(i-1,n-1) 那么,问题就可以变成判断C(0,n-1),C(1,n-1)....C(n-1,n-1)哪些是m的倍数 只需要计算出m的 ...
随机推荐
- [leetcode-783-Minimum Distance Between BST Nodes]
Given a Binary Search Tree (BST) with the root node root, return the minimum difference between the ...
- /etc/fstab 文件如何填写(转)
转载自 http://hi.baidu.com/jingzhongchen/blog/item/8e6f552dcead7ce98b139952.html 看你对/etc/fstab文件了解多少? ...
- Linux下实现Rsync目录同步备份
需求:对于开发机器做目录的数据备份 测试机IP:192.168.1.100 WEB目录:/bckup/ 下面我将用一台机器来备份上面测试机 /bckup下的所有数据,并实现时时同步 备份机器IP: ...
- c#数据库乱码
1.sql连接语句加charset=utf8: 2.不要使用odbcConnection. 在由utf8改为latin1时候,需要修改的地方: 1.连接数据库语句中的charset: 2.在sql语句 ...
- TensorFlow源码框架 杂记
一.为什么我们需要使用线程池技术(ThreadPool) 线程:采用“即时创建,即时销毁”策略,即接受请求后,创建一个新的线程,执行任务,完毕后,线程退出: 线程池:应用软件启动后,立即创建一定数量的 ...
- eg_1
1. 编写一个程序,输出一个字符串中的大写英文字母个数,小写英文字母个数以及非英文字母个数. 第一种方法: public class Test { public static void main(St ...
- 在LaTex中插入电路图的方法(插入图片)
主要的需求是要在文档中插入电路图. 有两种方法,一种是直接在LaTex中绘制电路图,使用的库主要是circ和circuitikz 另一种是在其他软件上绘制电路图,转成特定图像格式后,在Latex中插入 ...
- tomcat8配置管理员后仍然报403
tomcat8配置管理员后仍然报403 修改conf/tomcat-users.xml <role rolename="manager"/> <role ro ...
- MONyog-数据库性能监控工具
一.安装步骤 较为简单,网上可以搜索到,此处不做详细说明. 二.使用图解 此处介绍监控数据库连接量.并发量.吞吐量.响应时间等功能 1.设置连接需要监控的数据库 打开:http://127.0.0.1 ...
- Go语言【第十二篇】:Go数据结构之:切片(Slice)、范围(Range)、集合(Map)
Go语言切片(Slice) Go语言切片是对数组的抽象,Go数组的长度不可改变,在特定场景中这样的集合就不太适用,Go中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数 ...