首页 > 代码库 > 容斥原理应用
容斥原理应用
typedef __int64 ll;ll gao(ll l,ll r,ll n){//[l,r]内与n互素的数字个数 vector <ll> v; for(ll i=2;i*i<=n;i++){ if(n%i==0){ v.push_back(i); while(n%i==0)n/=i; } } if(n>1)v.push_back(n); int m=v.size(); ll res=0; for(ll i=1;i<(1<<m);i++){ int cnt=0; ll val=1; for(int j=0;j<m;j++){ if(i&(1<<j)){ cnt++; val*=v[j]; } } if(cnt&1)res+=r/val-(l-1)/val; else res-=r/val-(l-1)/val; } return r-l+1-res;}
容斥原理应用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。