[ NOI 2002 ] Robot
\(\\\)
Description
\(\\\)
Solution
垃圾语文题毁我青春
这题其实就是重定义了俩函数....
首先 \(\varphi(1)=0\) 。
然后 \(2\) 在计算 \(\mu\) 的时候不算做质因子,含 \(2\) 的数 \(\mu\) 值 \(=0\) 。
求 \(m\) 的所有因数中 , \(\mu=1,-1,0\) 的 \(\varphi\) 值之和。
\(\\\)
先考虑 \(\mu=1,-1\) 的答案。
根据 \(\mu\) 的定义,此时所有所求的数字都满足,分解质因数每一个质因数的质数至多为 \(1\) 。
然后 仅对于这些数 欧拉函数就有了一个新的计算公式:
\[ \varphi(n)=n\times {\frac{p_1-1}{p_1}}\times {\frac{p_2-1}{p_2}}\times ...\times {\frac{p_m-1}{p_m}}=(p_1-1)\times (p_2-1)\times ...\times (p_3-1) \]
发现这是一个质数集合选哪些的问题。
注意到每次多选一个质数,所有的数字答案都乘上了相同的数,所以可以直接求答案。
用一种类似动规的写法,依次考虑每一个位置选或不选。
记\(ans_1\)表示选奇数个质因子,\(ans_2\) 表示选偶数个质因子的答案。
\[ ans_1+=ans_2\times (p_i-1),ans_2+=ans_1\times (p_i-1) \]
可以思考一下加号连接的含义。
\(\\\)
然后就只需要解决 \(\mu=0\) 的部分了。
关于欧拉函数其实有一个等式
\[ \sum_{d|m}\varphi(d)=m \]
然后问题解决,答案就是 \(m-ans_1-ans_2-1\),之所以多减掉一个 \(1\) 是因为 \(\varphi(1)=0\) 。
\(\\\)
Code
#include<cmath>
#include<cstdio>
#include<cctype>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define mod 10000
#define R register
#define gc getchar
using namespace std;inline int rd(){int x=0; bool f=0; char c=gc();while(!isdigit(c)){if(c=='-')f=1;c=gc();}while(isdigit(c)){x=(x<<1)+(x<<3)+(c^48);c=gc();}return f?-x:x;
}inline int qpow(int x,int t){int res=1;while(t){if(t&1) (res*=x)%=mod;(x*=x)%=mod; t>>=1;}return res;
}int n,m=1,p,cnt,tmp,ansodd,anseven=1;int main(){int n=rd();for(R int i=1;i<=n;++i){p=rd(); cnt=rd();(m*=qpow(p,cnt))%=mod;if(p>2){tmp=ansodd;(ansodd+=anseven*(p-1))%=mod;(anseven+=tmp*(p-1))%=mod;}}printf("%d\n%d\n%d\n",(anseven-1+mod)%mod,ansodd,((m-anseven-ansodd)%mod+mod)%mod);return 0;
}
转载于:https://www.cnblogs.com/SGCollin/p/9917095.html
[ NOI 2002 ] Robot相关推荐
- vijos 1523 贪吃的九头龙
http://www.elijahqi.win/archives/1191 背景 安徽省芜湖市第二十七中学测试题 NOI 2002 贪吃的九头龙(dragon) Description:Officia ...
- 在php中表单传值怎么用,PHP学习笔记 01 之表单传值
一.HTML传值/PHP接收方法 1.GET(地址栏+问号+数据信息) (1)方式一:表单Form: method = 'get' GET接收数据方式: $_GET['表单元素name对应的值] (2 ...
- 【CodeVS 1540】银河英雄传说 2002年NOI全国竞赛
noi这么水? 很久没有自己不看题解A题了 ~~~~~~ 带权并查集! CodeVS的数据不合规定??有乱七八糟的字符?? 见我注释掉的读入![刚又测试 洛谷用被注释掉的那一句也可以A 说明CadeV ...
- My thoughts through a robot's eyes: An augmented reality-brain–machine interface
My thoughts through a robot's eyes: An augmented reality-brain–machine interface 机器人是我的眼:增强现实-脑机接口 文 ...
- 大连27中学距离计算机学校多远,热烈祝贺大连市第二十四中学被中国计算机(CCF)学会授予首批NOI培训基地...
为了表彰在全国奥林匹克信息学竞赛中取得优异成绩.做出突出贡献的 优秀高级中学,为在中学推动计算机科学教育.培养中学计算机编程教师,进而对学生进行培养,CCF拟在全国挑选NOI竞赛开展得好的中学作为CC ...
- NOI 3.5 哈希 1807:正方形
题目来源: http://noi.openjudge.cn/ch0305/1807/ http://poj.org/problem?id=2002 1807:正方形 总时间限制: 8000ms ...
- 2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片
2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片 英伟达核弹级GPU:800亿晶体管,20块承载全球互联网流量 2022年3 月 22 日,在英伟达 GTC2022 上,英伟达介绍了 Hoppe ...
- Robot Framework(十八) 支持工具
5支持工具 5.1库文档工具(libdoc) libdoc是一种用于为HTML和XML格式的测试库和资源文件生成关键字文档的工具.前一种格式适用于人类,后者适用于RIDE和其他工具.Libdoc也没有 ...
- Java Robot对象实现服务器屏幕远程监视
Java Robot对象实现服务器屏幕远程监视2006-01-16 17:33 作者: xiepan110 出处: BLOG 责任编辑:方舟 摘要: 有时候,在Java应用程序开发中,如:远程监控或远 ...
最新文章
- Oracle存储过程中执行DDL操作
- WINCE Launch函数分析
- 密钥登陆Linux服务器
- 用Axure开发的一个智能驾驶的app原型
- CSS3实现多样的边框效果
- GYM 101908F - Music Festival
- sharepoint 2007页面显示真实的错误信息
- 装饰者模式-继承模式和接口模式
- Volley网络请求框架简析——Android网络请求框架(三)
- 大数据学习笔记49:Flume Sinks(Flume接收器)
- 推荐系统中稀疏特征 Embedding 的优化表示方法
- newton版本linux,云计算之openstack-newton版搭建(四)
- 智慧城市大数据运营中心及城市大脑综合运行管理平台建设方案WORD
- Hadoop 十年解读与发展预测(插图+排版)
- SSM框架下的注册验证
- lbj学习日记 05 一维数组和二维数组
- python爬取数据教程_python爬虫爬取网页数据并解析数据
- 氨基-peg2000-水溶CulnS/ZnS量子点|NH2-PEG-CulnS/ZnSQDS的透射电镜(TEM)和高分辨透射电镜(HRTEM)图片
- 【转】UEFI引导修复教程和工具
- SQL2005数据库备份如何还原到SQL2000数据库中
热门文章
- 目标检测之行人检测(Pedestrian Detection)基于hog(梯度方向直方图)--- 梯度直方图特征行人检测、人流检测2...
- 数据库建模模板、菜单显示出问题解决方案
- OSPF-LSA数据包头
- Error: bin/bash^M: bad interpreter: no such file o
- kettle环境变量/kettle.properties的配置问题
- CSS美化上传按钮、checkbox和radio样式
- linux常用命令-查看文本/cat,tac,more,less,head,tail
- 推荐些在线小制作小工具
- Ajax的用法之JQuery
- [已经验证通过]xp sp2 不支持WPA协议的解决办法