ACM-ICPC 2017 Asia Urumqi K.

MOSFET高频响应实战:如何用LTspice仿真内部电容效应(附模型文件) 本文深入解析MOSFET高频响应中的内部电容效应,通过LTspice仿真工具详细展示如何提取模型参数并优化高频特性。从栅极相关电容到结电容的物理本质,再到实战案例中的开关损耗分析和频率响应扫描,提供全面的设计优化方法,帮助工程师有效应对高速开关电路中的电容挑战。 阅读详情

2017新疆ICPC现场赛K.Sum of the Line

题意:


思路:先推推柿子





i^2的和不是积性函数,不能线性筛= =(强行分开筛感觉很麻烦)

这个柿子不会往下化简了。。但是化到这里已经可以做了

第一种思路:预处理mu,对每个n枚举d 暴力搞一波

这种思路不行,1e8的O(n)mu预处理都快T了QAQ

第二种思路:

考虑mu的定义,我们只需枚举所有对ans有贡献的n的因子d

那什么是有贡献的d呢?

这些d能写成不重复素数的乘积

比如d=30=2*3*5,mu(30)=-1,ok

像d=45=3*3*5就不是有贡献的d,mu(45)=0;

假设我们对n分解质因子之后得到p1=2,p2=7.....

选奇数个p形成的d,mu(d)=-1

选偶数个p形成的d,mu(d)=1

这就是为什么莫比乌斯函数mu也可以叫做容斥因子了。

素数预处理sqrt(1e8)以内的就可以了

2*3*5*7*11*13*17*19*23>1e8

即n最多只有9个质因子

容斥2^9种状态无压力~

复杂度O(10000+T*(512+logn))

难度0.85

c++247ms


#include<iostream>
#include<stdio.h>
#include<vector>
#define ll long long
using namespace std;
const int maxn=1e4+5;
const int mod=998244353;
ll pri[3005]; 
bool isp[maxn];
ll mu[maxn];
int p=0;
ll inv6;
vector<int>dd;
inline ll read()
{
	ll x=0,f=1;char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
	return x*f;
}
ll qmod(ll a,ll b)
{
	ll res=1;
	while(b)
	{
		if(b&1)
			res=res*a%mod;
		a=a*a%mod;
		b=b>>1;
	}
	return res;
}
void get(ll n)
{
	isp[1]=1;
	mu[1]=1;
	for(ll i=2;i<=n;i++)
	{
		if(!isp[i])
		{
			pri[++p]=i;
			mu[i]=-1;
		}
		for(ll j=1;j<=p&&i*pri[j]<=n;j++)
		{
			isp[i*pri[j]]=1;
			if(i%pri[j]==0)//不互质
			{
				mu[i*pri[j]]=0;
			}
			else
			{
				mu[i*pri[j]]=-mu[i];
			}
		}
	}
}
void get2(int n)
{
	for(int i=1;i<=p&&n>1;i++)
	{
		if(n%pri[i]==0)
		{
			dd.push_back(pri[i]);
			n/=pri[i];
		}
		while(n%pri[i]==0)
		{
			n/=pri[i];
		}
	}
	if(n!=1)
		dd.push_back(n);
}
ll s(ll n)
{
	ll ans=(((n*(2*n+1)%mod)*(n+1))%mod*inv6)%mod;
	return ans;
}
int dfs(int n)
{
	int ans=0;
	for(int i=1;i<=n;i++)
	{
		if(n%i==0)
		{
			ans+=i*i*mu[i]*s(n/i);
		}
	}
	return ans;
}
int main()
{
	//cout<<2*3*5*7*11*13*17*21*23<<endl;
	inv6=qmod(6,mod-2);
	get(10000);
//	cout<<p<<endl;
//	for(int i=1;i<=100;i++)
//	{
//		printf("%d\n",dfs(i));
//	}
	int T;
	cin>>T;
	while(T--)
	{
		ll n;
		scanf("%lld",&n);
		dd.clear();
		get2(n);
//		for(int i=0;i<dd.size();i++)
//			printf("p:%d\n",dd[i]);
		ll ans=0;
		for(int i=0;i<(1<<dd.size());i++)
		{
			int t=1;int cnt=0;
			for(int j=0;j<dd.size();j++)
			{
				if(i&(1<<j))
				{
					t*=dd[j];
					cnt++;
				}
			}
		//	printf("test:%d\n",t);
			if(cnt%2==0)
				ans+=1ll*t*t*s(n/t),ans%=mod;
			else
				ans-=1ll*t*t*s(n/t),ans=(ans+mod)%mod;
		}
		printf("%lld\n",(ans+mod)%mod);
	//	puts("");
	}
	
} 







STM32驱动HC-SR04超声波模块:两种精准测距方案详解 本文详解STM32驱动HC-SR04超声波模块的两种精准测距方案:定时器中断计数法和外部中断边沿检测法。涵盖硬件连接、代码实现与优化技巧,帮助开发者根据精度和复杂度需求选择合适方案,提升超声波测距在嵌入式项目中的稳定性和准确性。 阅读详情

相关推荐

尝试使用CubeMX做stm32开发之九:SYS配置

参考《STM32中文参考手册_V10》,研究CubeMX中有关SYS的配置

Forster-C的博客 9420

ACM-ICPC 2017 Asia Urumqi: K. Sum of the Line(容斥)

Consider a triangle of integers, denoted by T. The value at (r,c) is denoted by Tr,c​, where 1≤r and 1≤c≤r. If the greatest common divisor of r and c is exactly 1, Tr​,c=c, or 0 otherwise.Now, we have...

Mitsuha_的博客 1213

UDS $27服务DLL文件生成

UDS 27算法 DLL文件生成

hkj8808的博客 1282

ACM-ICPC 2017 Asia Urumqi:A. Coins(DP)

Alice and Bob are playing a simple game. They line up a row of n identical coins, all with the heads facing down onto the table and the tails upward.For exactly m times they select any k of the coins ...

Mitsuha_的博客 1379

中兴FTTR光猫变简易OLT:低成本搭建全光监控与局域网实战指南

本文详细介绍了如何将中兴FTTR光猫改造为简易OLT设备,实现低成本全光监控与局域网扩展。通过LOID认证、桥接模式设置及终端数破解,用户可利用二手设备搭建高性能光纤网络,适用于远程监控和长距离组网场景,显著降低部署成本。

chair的专栏 2027

告别抓包失败!保姆级配置:让Burp+Proxifier稳定抓取任意微信小程序

本文提供了一套完整的Burp+Proxifier配置方案,确保稳定抓取微信小程序数据。从环境准备、工具选型到Burp Suite深度配置和Proxifier精准设置,详细解决了证书安装、进程捕获和乱码解析等核心问题,帮助开发者告别抓包失败,提升调试效率。

weixin_28738165的博客 453

ACM-ICPC 2017 Asia Urumqi (solve 6/11)

题目链接:https://www.jisuanke.com/contest/1409?view=challenges A题 题意:给你n个硬币,m次操作,每次抛上去k个硬币,问你m次操作后硬币向上的次数的期望。 思路:当有至少 k 枚硬币面朝下时,则选 k 枚面朝下的硬币去抛掷(任意k 枚都可以);如果不足 k 枚面朝下,则在选择所有面朝下的硬币的基础上再额外选择若干面朝上的银币。 dp[...

passer__的博客 785

lammps案例:reaxff势模拟Fe(OH)3高温反应过程

所有的reaxff模拟,如:氧化、腐蚀、热裂解、燃烧等模拟,均可采用此模拟框架,只需要更换data文件、势文件,代码中的control文件可以不写,电荷平衡文件也可以用reaxff替换。该案例主要模拟Fe(OH)3在高温下的反应过程,主要代码来自lammps自带的案例。lammps自带案例没有产物输出,故在此基础上稍加修改,增加了产物输出命令。如果需要系统学习反应势的模拟,可考虑报名培训课程。本文分享一个reaxff反应势的案例。in文件代码已经注释,以供参考。大家好,我是小马老师。

lammps_jiayou的博客 1965

2017 ACM-ICPC Asia Urumqi 题解

2017 ACM-ICPC Asia Urumqi 题解

Mitsuha_的博客 1261

OpenClaw插件配置错误修复完全指南

插件文件名是插件目录结构正确package.json配置正确OpenClaw的插件系统还在快速迭代,偶尔会遇到这种配置问题。看错误信息检查配置文件检查实际文件对比差异修复问题大部分问题都能解决。查看官方文档:https://openclaw.ai/docs提Issue:https://github.com/openclaw/openclaw/issues加入Discord社区求助快速修复命令汇总。

Maynor的博客 4092

java技术专家【面试】Java程序员英语面试整个流程

java技术专家【面试】Java程序员英语面试整个流程

大壮 752

ACM-ICPC 2017 Asia Urumqi A - Coins 概率dp

用dp[i][j]表示翻第i轮,有j个朝上,这题用往后推的方法比较好写。而不是在前面找。 然后用san[i][j]表示从抛i个硬币,有j个向上的概率,注意这个概率跟那i个硬币原来是正是反没关系。 根据题目的要求,要尽量让向上的硬币多,所以每次尽量选朝下的硬币,但朝下的硬币可能不够,所以 dp里往后推的时候要分两种情况 1. 朝下硬币够k个,那么dp[i][j]*san[k+1][l+1] ...

GeN的博客 534

在ABAQUS中使用VUMAT子程序实现Hashin失效准则的详细解析与实践:深入探讨复合材料模拟仿真的高级编程技巧

Hashin失效准则是由材料科学家Shlomo Hashin于1962年提出的一种基于能量方法的多向失效理论,主要用于预测复合材料的破坏行为。与传统的单向失效理论不同,Hashin准则考虑了材料内部的多种独立破坏机制,如基体断裂、界面脱粘、纤维断裂等,这些机制在不同应力状态下可能同时或分别发生。通过计算各个机制的能量释放率,Hashin失效准则能够更为准确地预测复合材料在复杂应力状态下的破坏行为。

qq_38334677的博客 1949

ACM-ICPC 2017 Asia Urumqi K. Sum of the Line 容斥

5222: Sum of the Line 时间限制:1 Sec内存限制:128 MB 提交:203解决:59 [提交] [状态] [讨论版] [命题人:admin] 题目描述 Consider a triangle of integers, denoted by T. The value at (r, c) is denoted by Tr,c, where 1 ≤ r ...

喵喵喵 175

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

[UPC](5222)Sum of the Line ---- 容斥原理★

题目链接 Hint: ACM-ICPC 2017 Asia Urumqi: K. Sum of the Line 做法:通过打表或手写,我们很容易发现,第k行的S就是gcd(x,k) = x 的平方和 当k为奇数时,我们可以直接利用   1^2 +2^2 +3^2 +4^2 +...+n^2   = n(n+1)(2n+1)/6 来求 当k为偶数时。比如k = 4时 那一行的T 为 1 ...

WangMeow --- ᶘ ᵒᴥᵒᶅ ฅ^•ﻌ•^ฅ 239

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

ACM-ICPC 2017 Asia Urumqi A.Coins解题报告

ACM-ICPC 2017 Asia Urumqi A.Coins 题目大意 有nnn枚硬币反面朝上,有mmm次操作,每次需要投掷ppp枚硬币,问你最后正面朝上的硬币个数的期望是多少 解题思路 dp[i][j]dp[i][j]dp[i][j]表示第iii次投掷有jjj枚硬币正面朝上的概率,dp[i][j+k]dp[i][j+k]dp[i][j+k]表示在第iii次投掷时有kkk枚硬币变成了正面朝上的概率,那么其转移方程即为: {dp[i][j+k]=∑dp[i−1][j]×Cpk×2−p &nbs

weixin_44211980的博客 235

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

ACM-ICPC 2017 Asia Urumqi

B. The Difference 水题,暴力跑一边permutation G. The Mountain 水题,直接用叉积算一发面积 #include &amp;lt;bits/stdc++.h&amp;gt; #include&amp;lt;cstring&amp;gt; using namespace std; #define ll long long const int maxn = 201; struct Point ...

limn204的专栏 510

ACM-ICPC 2017 Asia Urumqi Coins

ACM-ICPC 2017 Asia Urumqi Coins 题意: 有n个硬币全部正面朝下,你有m次操作,每次操作选择k个硬币抛起来,问在最优策略下,你得到数量最多的朝上的硬币数量的期望。 思路: 我一开始想到的是dfs,但是感觉不行,复杂度太高了,后来又想到用概率dp做,我们每一次抛起来,规定现在有几个正面,然后去推这一次抛完后有几个正面,,最后得到概率,乘上期望就好了。但是dp的时候要注意类讨论,有一种情况是我们剩下的反面硬币不足k个,就需要用到已经是正面的硬币,这时候dp就要减去被卷进来的本来已

weixin_45434743的博客 171

ACM-ICPC 2017 Asia Urumqi A. Coins【期望dp】

题目链接:https://www.jisuanke.com/contest/2870?view=challenges 题目大意:给出n个都正面朝下的硬币,操作m次,每次都选取k枚硬币抛到空中,求操作m次后,硬币向上的期望值。 思路: 1.期望跟概率还是有点不同的,期望要枚举出抛的所有的情况,然后求sigma(i * dp[][]) 2.dp[i][j]表示进行i次操作后,有j枚硬...

a6334167的博客 182

ACM-ICPC 2017 Asia Urumqi A.Coins【概率dp / 期望dp】

Link 概率dp/期望dp 题意 n个硬币初始朝下,掷m次,每次任意选k个投掷,问在采取最优策略下(使朝上硬币尽可能多),m次后朝上的硬币的数量的期望是多少? 分析 最优策略:尽可能的选朝下的硬币投掷 令dp[i][j]表示为投i次后有j个硬币朝上的概率 令x为第i次投掷完后,k个硬币中有x个朝上(0<=x<=k) 考虑转移方程。 由于采取最优策略,假设所取硬币全部朝下,则dp[i][j]对dp[i+1][j+x]有贡献。 假设由于朝下硬币数量过少,无法取到k个,则需由朝上硬币代替

while_you的博客 231

2017 ICPC 乌鲁木齐现场赛 A Coin ACM-ICPC 2017 Asia Urumqi(概率dp)

题目链接 Alice and Bob are playing a simple game. They line up a row of nnn identical coins, all with the heads facing down onto the table and the tails upward. For exactly mmm times they select any k o...

咸鱼有梦想 1095

ACM-ICPC 2017 Asia Urumqi+hdu1576(逆元)

ACM-ICPC 2017 Asia Urumqi,这道题目用到了逆元还有几何计算,需要推出公式 逆元模板 费马小定理: #define LL long long using namespace std; LL n; LL extgcd(LL a,LL b,LL &x,LL &y)//返回a和b的最大公约数 { if(b==0) { ...

weixin_30646505的博客 158

ACM-ICPC 2017 Asia Urumqi A. Coins

Alice and Bob are playing a simple game. They line up a row ofnidentical coins, all with the heads facing down onto the table and the tails upward. For exactlymmtimes they select anykof the c...

weixin_30508241的博客 152

ACM-ICPC 2017 Asia Urumqi:A. Coins(DP) 组合数学

Alice and Bob are playing a simple game. They line up a row ofnnidentical coins, all with the heads facing down onto the table and the tails upward. For exactlymmtimes they select anykkof the...

weixin_34233421的博客 172

ACM-ICPC 2017 Asia Urumqi-D-Lucas

这个题UVALive数据不对,可以去计蒜课提交https://nanti.jisuanke.com/t/28963 这个题我也不会,题解是一个公式,然后Lucas求结果就行了 以前用的Lucas得处理阶乘,这个版本的Lucas直接递归即可 -----------------------------------------------------------------------------...

alusang的博客 325

ACM-ICPC 2017 Asia Urumqi(第八场)

A. Coins Alice and Bob are playing a simple game. They line up a row of nnn identical coins, all with the heads facing down onto the table and the tails upward. For exactly mmm times they select a...

weixin_30248399的博客 246
上一篇: hdu4912 LCA(ST)+???+贪心
下一篇: JNU第三场训练赛题解
animalcoder
博客等级 码龄9年 43粉丝 150原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值