URAL_1055

将组合数展开后的每个数依次分解素因子,最后再统计一下有多少种素因子就可以了。

#include<stdio.h>
#include<string.h>
#define MAXD 1010
#define MAXN 50010
int N, M, isprime[MAXD], prime[MAXD], P, h[MAXN];
void prepare()
{int i, j;P = 0;memset(isprime, -1, sizeof(isprime));for(i = 2; i <= 1000; i ++)if(isprime[i]){prime[P ++] = i;for(j = i * i; j <= 1000; j += i)isprime[j] = 0;}
}
void deal(int n, int d)
{int i;;for(i = 0; prime[i] * prime[i] <= n; i ++)while(n % prime[i] == 0)h[prime[i]] += d, n /= prime[i];h[n] += d;
}
void solve()
{int i, ans = 0;memset(h, 0, sizeof(h));for(i = N - M + 1; i <= N; i ++)deal(i, 1);for(i = 1; i <= M; i ++)deal(i, -1);for(i = 2; i <= N; i ++)if(h[i])++ ans;printf("%d\n", ans);
}
int main()
{prepare();while(scanf("%d%d", &N, &M) == 2){solve();}return 0;
}

URAL 1055 Combinations相关推荐

  1. pku,zju题目分类

    哎呦喂,直接ctrl+A了.话说浙江大学的题还见过的呢.. 公告: [意见反馈][官方博客]   ural pku Zju 题目分类 收藏   感谢 mugu 的提供.... Ural Problem ...

  2. [Leetcode] Combinations 组合数

    Combinations Given two integers n and k, return all possible ombinations of k numbers out of 1 ... n ...

  3. LeetCode 17. Letter Combinations of a Phone Number--笔试题--C++,Python解法

    题目地址:Letter Combinations of a Phone Number - LeetCode Given a string containing digits from 2-9 incl ...

  4. Ural 1018 (树形DP+背包+优化)

    题目链接: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=17662 题目大意:树枝上间连接着一坨坨苹果(不要在意'坨'),给 ...

  5. bzoj1814 Ural 1519 Formula 1(插头dp模板题)

    1814: Ural 1519 Formula 1 Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 924  Solved: 351 [Submit][S ...

  6. LeetCode-17-Letter Combinations of a Phone Number

    算法描述: Given a string containing digits from 2-9 inclusive, return all possible letter combinations t ...

  7. 1055. 集体照 (25)

    1055. 集体照 (25) 时间限制 400 ms 内存限制 65536 kB  乙级练习题解目录 拍集体照时队形很重要,这里对给定的N个人K排的队形设计排队规则如下: 每排人数为N/K(向下取整) ...

  8. itertools库 combinations() 和 permutations() 组合 和 排列选项的方法

    combinations方法重点在组合,permutations方法重在排列. combinations和permutations返回的是对象地址,原因是在python3里面,返回值已经不再是list ...

  9. LeetCode Combinations (组合)

    问题:给出n,k,要求输出从1到n选取k个数的所有组合 思路:使用dfs,第一层是从1到n中选取一个数,第二层是从基于上一层选取的数+1到n中选取一个数,依次类推. 具体代码参考: https://g ...

最新文章

  1. 《Algorithm算法》笔记:元素排序(2)——希尔排序
  2. Android之jni编译报错comparsion between signed and unsigned integer expressions解决办法
  3. 作者:夏虎, 男, 电子科技大学副研究员、 教育大数据研究所所长。
  4. mysql linux 关闭防火墙_linux常用命令和关闭防火墙
  5. 【华为云技术分享】自动网络搜索(NAS)在语义分割上的应用(一)
  6. 漫画让你秒懂5G黑科技....
  7. java逗号的转义字符是,Java是否有'@'字符来转义字符串引号?
  8. printf(%d,5.01)和printf(%f,5)的输出结果
  9. mvc三层架构_Java架构-代码分层的设计之道
  10. Python的collections模块中namedtuple结构使用示例
  11. window启动过程讲解--PPT截图[张银奎]
  12. 理解XML Schema: XML Schema 初步 (I)(转)
  13. linux 链表头文件,Linux下单链表的实现
  14. systemtap调试linux内核源码,内核调试工具SystemTap:适合懒人的printk替代品
  15. HDU 1358 Period【KMP】
  16. mysql 批量更新_MySQL批量更新
  17. c++类与对象之默认成员函数
  18. @my_decorator
  19. 电脑计算机的快捷键是什么,电脑保存的快捷键是什么-电脑知识
  20. RecyclerView的 overScrollMode,scrollbars属性含义

热门文章

  1. 带着问题读CLR via C#(六)常量与字段
  2. Ubuntu配置交叉编译环境
  3. 开发时间及内容(二)
  4. 自动登录126邮箱的脚本
  5. Paint.Net学习笔记——二、窗体(上)
  6. 猜测:引力与空间映射
  7. 用反向传导分子模型去计算基团的定位效应
  8. 【控制】《多无人机协同控制技术》周伟老师-第11章-多无人机协同航迹规划方法
  9. 【控制】《多无人机协同控制技术》周伟老师-第5章-基于滑模控制的无人机编队运动控制策略
  10. 3.5 向量化实现的解释-深度学习-Stanford吴恩达教授