TYZ 8/25 送分题

SNOI2018 暴力记 DAY-1:下午中考体考,早上就没去机房,十点才起的床,中午考试前和班里同学谈笑风生了一会,结果都奶我进队,之后体考也凉凉的,50m起跑慢了,1000m没安排好时间,实心球离满分差的贼远,最后47分滚粗,班里绝大多数人都49。DAY0:省选前一天,敲了一天模板,还打了三道SA题,已经为我省选翻车做好了铺垫。晚上机房人几乎都走完了,我一天也没打几个模板,感觉真的要凉了,就再也没管了颓圮去了,打了五局... 阅读详情

送分题

【问题描述】

每个人都会枚举,所以给大家一个送分题。

区间[L,R]内有多少个数字K满足:

K各个非0位都能被K整除?

例如,250的非0位是2,5,250/2=125,250/5=50。

【输入格式】

一行,两个正整数L,R。

【输出格式】

一个数字,表示答案的个数。

【输入样例】

12 15

【输出样例】

2

【数据范围与约定】

对于30%的数据,L,R<=10^5。

对于60%的数据,L,R<=9*10^9。

对于100%的数据,L,R<=10^18。

  

确实送了分,

前30%的数据一年之前,甚至于刚刚开始学oi的时候就可以写出来。

  模拟,这个分解位数可以直接取模

  60%的数据

万能的打表!

  NOIP限制的提交源程序的体积在1MB以内,所以把10^10以内的数据全部打出来是不现实的,

然而我们可以在1s之内计算出10^6以内的数据(或者更多)

那么为何不隔10^6打一个表呢?

这个10^10的数据,我试过,在机子上跑大概25分钟就完了

用文件输出,每个数字中间各一个逗号,之后直接用到数组里面,

这样子60%的数据,输入之后先用除法和取模找到最近的那个表中的数据,然后直接进行有限次计算就OK了

分段打表!!!

索了这么多,但是由于Azuremayfly家里的电脑发热严重,所以表没打完

所以大家自行脑补一下这个程序吧,或者有时间到了配置I5的伟大TYZ机房,我再贡献出来这个表

NOIP考试的时候机子很好的

 去年SN在全国闻名的西安友谊西路上最有名的学校考的,机子的内存,CPU什么的这个表还是可以搞定的

但是还是要写一段代码 

/*
	
	假装有打表的样子
	假装watch[i]表示i*10^6的结果
	ll r,ll l;
	ll lans=watch[l/(1000000)];
	ll rans=watch[r/1000000];
	for(ll i= l/(1000000);i<=l;i++)
	if(check(i)) lans++;
	for(ll i= r/(1000000);i<=r;i++)
	if(check(i)) rans++;
	cout<<(rans-lans)<<endl;
	return 0;
	*/

来说满分做法

这是一个DP\记忆搜索

 因为0123456789这几个的最小公倍数就2520,他们各个数的最小公倍数也不过50来种

所以就有搞头了

 不要把数字看成一个大数字,就看成一个字符串或者一组数

 在代码里面用了num数组,这样你就可以看到,巨大的数字也不过20来个

 [L,R]范围内,有多少个数字,可以整除各个位上的数字的最小公倍数。
又因为,所有最小公倍数gcd肯定都是2520的约数,所以一个数字X%gcd一定等于X%2520%gcd。

dp[当前长度][对2520%的结果][当前最小公倍数(为了防止mle用了哈希)】

  

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<vector>
using namespace std;
typedef long long ll;
ll l,r;
ll ans;
ll t;
int a[25],ta;
bool check(ll x)
{
	ta=0; 
	int nx=x;
	while(x>0)
	{
		int nw=x%10;
		x/=10;
		a[ta]=nw;
		ta++;
	}
	for(int i=0;i<ta;i++)
	{
		if(a[i]!=0)
		{
			if(nx%a[i]!=0)
			return 0;
		}
	}
	return 1;
}
ll dp[25][2525][52];
ll hashs[2525],top_hashs;
ll gcd(ll xxx, ll yyy)
{
	if(!yyy)
	return xxx;
	else return gcd(yyy,xxx%yyy);
 } 
 ll lcm(ll xxx,ll yyy)
 {
 	ll res=xxx*yyy/gcd(xxx,yyy);
 	return res;
 }
ll num[25];//stands for the number of each position of the ll number 
ll top_num;
ll dfs(ll len_,ll mod_,ll lcm_,bool limit_)
{
	if(len_==-1)
	{
		if(mod_%lcm_)
		return 0;
		else
		return 1;
	}
	ll res=dp[len_][mod_][hashs[lcm_]];
	if(limit_==0&&res!=-1) return res;
	res=0;
	ll lm;
	if(limit_) lm=num[len_];else lm=9;
	res+=dfs(len_-1,(mod_*10)%2520,lcm_,0);
	for(int i=1;i<=lm;i++)
	{
		res+=dfs(len_-1,(mod_*10+i)%2520,lcm(lcm_,i),limit_&&i==lm);
	}
	if(!limit_)
	dp[len_][mod_][hashs[lcm_]]=res; 
	return res;
}
ll solve(ll obj)
{
	memset(num,0,sizeof(num));
	top_num=0;
	while(obj>0)
	{
		ll nw=obj%10;
		obj/=10;
		num[top_num]=nw,top_num++;
		//works like the stack		
	}
	return dfs(top_num-1,0,1,1);
}
int main()
{
	cin>>l>>r;
	if(l<=100000&&r<=100000)
	{
		for(ll i=l;i<=r;i++)
		{
			if(check(i))
			ans++;
		}
		cout<<ans<<endl;
		return 0;
	}
	
	else
	{
		memset(dp,-1,sizeof dp);
		int cnt = 0;
    for (int i = 1; i <= 2520; i++)
        if (2520 % i == 0) hashs[i] = cnt++;
        //用50以内的数字来表示 最小公倍数,方便数位dp;
		 ll ans=solve(r)-solve(l-1);
		 cout<<ans<<endl;
		 return 0;	  
	}
}




python google 搜索结果爬取_python爬取google搜索结果,配合sqlmap做sql注入检测 前段时间试了半自动sql注入检测的小程序:https://www.cnblogs.com/theseventhson/p/13755588.html 原理很简单:先在百度用关键词爬取目标url后保存在txt文件;再开启sqlmap的api调用服务,用python脚本把爬取的url推动到sqlmap的api实现批量检测sql注入的目的;从实际的效果来看,sql注入的检测效果还不错,存在注入的url... 阅读详情

相关推荐

32、基于Arduino的温度监测与信息传输系统搭建

本文介绍了基于Arduino和以太网扩展板实现的温度监测与信息传输系统,包含两个项目:项目48通过电子邮件发送温度过高或过低的警报,项目49通过Twitter机器人定期推送温度更新信息。文章详细描述了代码实现、准备工作、流程分析以及系统的扩展与优化思路,帮助读者掌握Arduino在环境监测与远程信息传输方面的应用。

water的专栏 98

TYZ 8/25 ranwen的烦恼

冉文的烦恼 【问题描述】 冉文是个粗心的人,经常不小心把垃圾丢到地上。艾教实在没办法,只好派了m个学生,去捡冉文走过路上的垃圾。 假设冉文走过的路线是一条直线,每个位置分别是1..n,每个位置上垃圾的个数是ai。所有学生起始位置都在0,每秒钟,他们有两种选择: 1.向右走一步。 2.捡起一个地上的垃圾。 现在我们的问题是:要捡起冉文的所有垃圾,最少需要多少秒? 【输入格式】 第一行

AzureMayfly的博客 862

32、基于Arduino的以太网通信项目:邮件警报与Twitter更新

本文介绍了两个基于Arduino以太网扩展板的物联网应用项目:邮件警报系统和Twitter机器人。邮件警报系统可在温度超过阈值时自动发送警报邮件,适用于机房等需要异常监控的场景;Twitter机器人则可定期发布温度传感器数据,实现数据的公开分享与远程监控。文章提供了详细的代码实现、流程分析以及常见问题的解决方案,并探讨了项目的拓展方向和技术建议,为开发者提供了实用的参考。

flower的专栏 59

TYZ群赛 8/21解题报告

一场内部群赛的解题报告(不过我写了题目摘要)

AzureMayfly的博客 938

点云体素化算法研究-3.Voxelization 三维模型体素化

体素(voxel)即体积元素的简称,是数字数据在三维空间分割上的最小的单位。体素化就是通过创建三维体素网格来表示三维物体,是一种将无序点云变为有序点云的降采样的空间数据结构方法,便于实现点云的空间卷积。激光雷达(LiDAR)| Open3D:第五节 表面重建-体素化。

周陽讀書 2065

ArcGIS | 全球新冠肺炎地图数据下载和处理

ArcGIS

thinkpang的博客 2900

TYZ 8/25 LJM 交换!交换!

题目大意 交换,交换! 【问题描述】 某佳穆喜欢交换物品,他觉得这样可以与更多人分享好的事物。 有一天,钊兴给了某佳穆n本书,这n本书的有益程度分别是a[i],排成一排。然后钊兴告诉他:我可以给你k次机会,你最多可以交换其中k对书的位置,然后在现在的排列中拿走其中连续的一段。 某佳穆是一个正能量的人,他想使得自己拿走的这一段书有益程度加起来尽量大,所以他决定写一个程序来计算。 【输

AzureMayfly的博客 1976

电机控制-PMSM无感FOC控制(四)SVPWM——过调制

上一章我们提到了SVPWM矢量合成的范围在一个平面的矢量圆内,那么当电压矢量超出调制范围时,该怎么做呢?这就是过调制要解决的问题。电机控制-PMSM无感foc控制(三)SVPWM据之前讲解的内容我们可以知道,SVPWM技术在电压空间上模拟了一个近似于圆的电压轨迹,减小了相电流的谐波,降低了电机的谐波损耗,抑制了转矩脉动。然而,SVPWM技术也存在一些问题,合成电压矢量有极限便是其中之一。这个半径为√3/3Vdc的区域也被称作SVPWM的线性区域。

zhuxinmingde的博客 1314

TYZ 8/23 原根

题意: 元根 : 题目描述   第一反应:要考数论 看完题目之后,这出题人搞了个概念来玩我们的吧 数据范围看完之后,觉得悬 欧拉函数可以在n^0.5内算完,互质的数也一样, Int 欧拉函数=m 算出来之后,假设有M个的话,那么枚举a需要m,每个a的阶数最坏也是m, 快速幂看来少不了了 所以最坏是m^2 这样看来,eular函数各种风骚求法就不用了,老

AzureMayfly的博客 1006

3060台式机 Ubuntu 双系统部署 LingBot-Map 完整指南

摘要: 本文详细介绍了在配备RTX 3060显卡的台式机上部署Ubuntu双系统并安装LingBot-Map 3D重建模型的完整流程。LingBot-Map作为蚂蚁灵波科技开源的Transformer架构模型,在流式3D场景重建中展现出高效性能(20 FPS)和卓越精度(ATE仅6.42米)。指南涵盖关键准备步骤、UEFI分区原理、Ubuntu安装流程(推荐150GB空间及手动分区方案),以及后续驱动配置说明,特别强调RTX 3060需12GB显存支持,并提供了数据备份、Secure Boot处理等实用建议

huanghm88的专栏 309

如何利用air780e与stm32c8c6进行通信实现给手机发送一条英文短信的功能?

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1237

TYZ 8/23 物语

题目描述: 3、物语 (monogatari.cpp/c/pas)   【问题描述】 某一天,少年邂逅了同病相连的IA。见面后,IA一把牵起少年的手,决定和他一起逃离部落,离开这个无法容身的是非之地。 要逃离部落,少年和IA就需要先选择一条耗时最少的路线,从而避免被部落的大人们抓到。部落可以大致分为N个区域,少年和IA在区域1,部落的出口设在区域N。此外部落还有M条连接两个区域道路

AzureMayfly的博客 578

全面认识PFC和LLC

想象一下,你在拉一辆车,如果你的力气都用在推动车子前进的方向上,这样拉车会比较轻松。而如果你的力气用在不正确的方向,比如侧向、斜向,那就需要更大的力气才能推动车子。PFC就是在帮助电流“朝着正确的方向”流动,这样可以用更少的能量做更多的事情,减少无用的功率损耗。PFC负责将电流方向对齐,让电源效率更高,而LLC负责电压的高效转换,两者配合可以在更宽的负载范围内保持高效率。综上所述,PFC LLC电路是一种高效的电源转换电路,通过PFC模块和LLC模块的组合,实现了从交流电到直流电的高效转换。

weixin_43199439的博客 6092

电脑护眼工具科学评测与使用指南

四款护眼工具推荐(官方安全下载) f.lux:自动调节色温的跨平台工具,根据地理位置动态调整蓝光量,适合程序员和夜间工作者。 LightBulb:开源极简色温调节工具,采用伽马值调整技术,性能占用低,适合设计师和性能敏感用户。 CareUEyes:中文界面,集成蓝光过滤、亮度调节和强制休息提醒,提供7天免费试用。 Twinkle Tray:微软商店应用,通过硬件协议精准调节多显示器亮度,适合游戏玩家和专业用户。 使用建议:设计师推荐LightBulb+白名单功能;程序员适合f.lux夜间模式;学生办公推荐C

全栈 315

408 | 408常用计算公式与方法 —— 计组篇 汇总

408常用计算公式与方法 —— 计算机组成原理篇 汇总

"You are worthy! You can do it!" 4651

【Unity】【Photon】Photon Fusion2 的核心Unity组件 NetworkRunner 学习笔记

本文是学习Photon Fusion2 的核心Unity组件 NetworkRunner的学习笔记。

O青草O的博客 Unity和游戏制作知识分享 1270

免费开源无广告,电脑护眼首选轻量软件

LightBulb:轻量开源的Windows护眼色温工具 LightBulb是一款由俄罗斯开发者Alexey Golub开发的免费开源护眼软件,适用于Windows 7-11系统。它通过动态调整屏幕伽马值,实现色温从白天冷蓝(6500K)到夜晚暖黄(2700K)的平滑过渡,有效减少蓝光伤害,缓解眼疲劳。 软件特点包括: 轻量高效:内存占用仅12-15MB,CPU使用率低至0.3% 专业功能:支持500K-20000K色温调节,应用白名单(如PS、Pr等设计软件自动暂停) 智能便捷:基于地理位置的自动日出日落

2403_89245059的博客 683

精雕软件(JDpaint) 5.5 绿色版

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

法律咨询录音转写:高精度要求下的Fun-ASR调优

针对法律咨询场景中高精度语音转写的需求,Fun-ASR通过热词增强、ITN规整和VAD智能分段等技术显著降低关键信息错误率。本地化部署保障数据安全,结合批量处理与参数优化,实现高效、可控的录音归档流程,助力律所从被动记录转向主动知识管理。

weixin_42360733的博客 850

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

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

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

ISCC 2026 校级赛 web

消失的密钥先是一个更key有关的过滤,尝试之后,发现key会回显为空,则kkeyey可以使key输入接下去要POST 让a中有1337,用数组试试a[key]=1337最后时md5弱比较,因为0e会被认为时0=0,所以payload:a=QNKCDZO&b=240610708GET:?随便试试,得到提示要看robots.txt发现beautify看不见,而preview有hint然后查看响应头,发现两条关键信息:然后尝试file=../../etc/passwd 是 Forbidden。

Tokai_Teio_1的博客 830

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

signature=41002d8186eebe290c5b32b454d59514,package-lock.json

{"name": "hyperledger-explorer","version": "0.3.0","lockfileVersion": 1,"requires": true,"dependencies": {"accepts": {"version": "1.3.4","resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4...

weixin_39717825的博客 1213

est

【问题描述】BG 是一个著名的诗人,经常作诗自娱自乐。但是,他一直被一件事情所困扰,那就是诗的排版问题。一首诗包含了若干个句子,对于一些连续的短句,可以将它们用空格隔开并放在同一行中, 注意一行中可以放的句子数目是没有限制的。 BG 给每首诗定义了一个行标准长度 M (行的长度为一行中符号的总个数) ,他希望排版后每行的长度都和前一行相差不远,且不能超过行标准长度。显然排版时,不应改变原有的句子顺...

weixin_34234823的博客 182

TYZ 8/22 人品问题

人品问题 题目描述 网上出现了一种高科技产品——人品测试器。只要你把你的真实姓名输入进去,系统将自动输出你的人品指数。yzx不相信自己的人品为0。经过了许多研究后,yzx得出了一个更为科学的人品计算方法。这种方法的理论依据是一个非常重要的结论:人品具有遗传性。因此,一个人的人品完全由他的祖先决定。yzx提出的人品计算方法相当简单,只需要将测试对象的k个祖先的人品指数(可能为负数)加起来即可。选

AzureMayfly的博客 4133

TYZ 8/22 艰难的抉择(非常男女)

T2艰难的抉择 1. 题目描述 Yzx已经当过多次“媒人”了。他因此获得了许多经验。例如,距Yzx观察,身高相近的人似乎比较合得来。 Yzx在学校策划了一次大型的“非常男女”配对活动。对于这次活动的参与者,Yzx有自己独特的选择方式。他希望能选择男女人数相等且身高都很接近的一些人。这种选择方式实现起来很简单,他让学校的所有人按照身高排成一排,然后从中选出连续的若干个人,使得这些人中男女人数

AzureMayfly的博客 2706

TYZ 8/23 道路覆盖

道路覆盖 (cover.cpp/c/pas)   【问题描述】 Tar把一段凹凸不平的路分成了高度不同的N段,并用H[i]表示第i段高度。现在Tar一共有n种泥土可用,它们都能覆盖给定的连续的k个部分。 对于第i种泥土,它的价格为C[i],可以使得区间[i,min(n,i+k-1)]的路段的高度增加E[i]。 Tar要设定一种泥土使用计划,使得使用若干泥土后,这条路最低的高度尽量高,并

AzureMayfly的博客 1797
上一篇: TYZ 8/25 ranwen的烦恼
下一篇: TYZ 09/08 琪露诺的算术教室
AzureMayfly
博客等级 码龄10年 1粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值