代码

#include<cstdio>
#include<algorithm>
using namespace std; const int N = 3 * 1e6;
int l , r , p , tp , prime[105] , num[N + 5] , n , vis[105] , f[N + 5] , ok[N + 5] , ans; inline void getp()
{
vis[1] = vis[0] = 1;
for(register int i = 2; i <= p; i++)
{
if (!vis[i]) prime[++tp] = i;
for(register int j = 1; j <= tp && prime[j] * i <= p; j++)
{
vis[i * prime[j]] = 1;
if (i % prime[j] == 0) break;
}
}
} inline void dfs(int x , int v)
{
num[++n] = v;
for(register int i = x; i <= tp; i++)
if (prime[i] * (long long)v <= r) dfs(i , prime[i] * v);
} int main()
{
scanf("%d%d%d" , &l , &r , &p);
getp();
dfs(1 , 1);
num[++n] = 1;
sort(num + 1 , num + n + 1);
f[1] = 0;
for(register int i = 2; i <= n; i++) f[i] = 1e9;
for(register int i = 2; i <= p; i++)
{
register int j = 1;
for(register int k = 1; k <= n; k++)
{
while (j <= n && num[k] * i != num[j]) j++;
if (j > n) break;
if (f[k] + 1 < f[j]) f[j] = f[k] + 1;
if (f[j] + i <= p && num[j] >= l && !ok[j]) ok[j] = 1 , ans++;
}
}
printf("%d" , ans);

Philips and Calculator的更多相关文章

  1. [LeetCode] Basic Calculator II 基本计算器之二

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  2. [LeetCode] Basic Calculator 基本计算器

    Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...

  3. Basic Calculator II

    Implement a basic calculator to evaluate a simple expression string. The expression string contains ...

  4. Windows Universal 应用 – Tip Calculator

    声明 以下内容取材于 Bob Tabor 的课程<Windows Phone 8.1 Development for Absolute Beginners>,链接地址为:http://ww ...

  5. 音频指纹(Philips)

    参考<A Highly Robust Audio Fingerprinting System> Philips 音频指纹提取流程: 仿真效果: 第一个图为歌曲1的第一个指纹. 第二个图为歌 ...

  6. Calculator(1.5)

    Calculator(1.5) Github链接 ps.负数的处理未完成 解题过程中遇到的困难和解决 <stack>的使用: 认真研究了栈,基本上掌握了用法,与<queue>的 ...

  7. Calculator(1.0)

    Calculator(1.0) Github链接 解题过程中遇到的困难 对于c++中类和对象的使用不够明确,看了c++的视频教程学会了用类和对象来写程序. 不会使用<queue>,在网上查 ...

  8. 数据结构与算法(1)支线任务2——Basic Calculator

    题目:https://leetcode.com/problems/basic-calculator/ Implement a basic calculator to evaluate a simple ...

  9. calculator

    #include <stdio.h> #include <stdlib.h> typedef enum { FALSE = , TRUE }BOOL; void calcula ...

  10. Basic Calculator

    本博客介绍leetcode上的一道不难,但是比较经典的算法题. 题目如下: Implement a basic calculator to evaluate a simple expression s ...

随机推荐

  1. jmeter 从多个数中随机取一个值的方法

    问题描述:使用jmeter进行接口测试时,遇到枚举值(如:10代表闲置.15代表使用中.20代表维修等)我们需要随机取一个类型传到接口中. 解决思路:通过函数助手查找随机函数,找到__chooseRa ...

  2. 【每日一题】【链表&头插法&ASCII码】【链表&迭代器】2022年1月28日-NC1 大数加法

    描述以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回. 思路:原生链表&头插法节点值 import java.util.*; public class Solution ...

  3. 基于Nginx搭建WebDAV服务

    title: 基于Nginx搭建WebDAV服务 categories: - [IT,网络,服务] tags: - WebDAV - Nginx comments: true date: 2022-1 ...

  4. pycharm 2021.2.1专业版破解

    1.网址:https://gitee.com/pengzhile/ide-eval-resetter 2.点击下载.下载后直接丢进pycharm中. 3.勾选.重启 .查看

  5. 成功解决pycharm 的setting中的Error occurred when installing package 'Keras'

    成功解决pycharm 的setting中的Error occurred when installing package 'Keras' 刚刚开始学习python在安装package上碰了不上壁. M ...

  6. vulnhub靶场之DARKHOLE: 1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:DarkHole: 1,下载地址:https://download.vulnhub.com/darkhole/DarkHole.zip,下载后直 ...

  7. APP兼容测试点与WEB兼容测试点

    APP兼容测试点 WEB兼容测试点

  8. Vue3.0 生命周期

    所有生命周期钩子的this上下文都是绑定至实例的. beforeCreate:在实例初始化之后.进行数据帧听和事件/侦听器的配置之前同步调用. created:实例创建完成,主要包括数据帧听.计算属性 ...

  9. Linux基础第五章 进程控制

    5.2 fork fork函数实现进程复制,类似于动物界的单性繁殖,fork函数直接创建一个子进程.这是Linux创建进程最常用的方法.在这一小节中,子进程概念指fork产生的进程,父进程指主动调用f ...

  10. 9、手写一个starter

    一.starte详解: 1.starter场景启动器: SpringBoot-starter是一个集成接合器,主要完成两件事: (1).引入模块所需的相关jar包 (2).自动配置各自模块所需的属性 ...