O(1) 快速乘
有一些毒瘤题,数据大小不光会炸\(int\),有时甚至会炸\(long long\)。这时一个\(O(1)\)的防爆乘就很重要了
\(a*b%p\)可以转化为\(a*b-[a*b/p]*p\) 这里用了\(long double\)舍弃低位保留18位的特性
最后不要忘记特判
inline ll C(ll a,ll b,ll p){
	a%=p,b%=p;
	ll c=a*b-(ll)((long double)a*b/p+0.5)*p;
	return c<0?c+p:c;
}
O(1) 快速乘的更多相关文章
- 快速构建H5单页面切换骨架
		在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ... 
- .net core快速上手
		2014年11月12日的Connect ();开发者活动上宣布将.NET堆栈基于MIT协议开源,并且提供开源保证,托管在Github上.当时的版本与最终目标相距甚远,然而有一点可以肯定的是,这是一个与 ... 
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
		平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ... 
- SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)
		SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ... 
- 快速搭建springmvc+spring data jpa工程
		一.前言 这里简单讲述一下如何快速使用springmvc和spring data jpa搭建后台开发工程,并提供了一个简单的demo作为参考. 二.创建maven工程 http://www.cnblo ... 
- 如何快速优化手游性能问题?从UGUI优化说起
		WeTest 导读 本文作者从自身多年的Unity项目UI开发及优化的经验出发,从UGUI,CPU,GPU以及unity特有资源等几个维度,介绍了unity手游性能优化的一些方法. 在之前的文 ... 
- Photoshop将普通照片快速制作二次元漫画风格效果
		今天为大家分享Photoshop将普通照片快速制作二次元漫画风格效果,教程很不错,对于喜欢漫画的朋友可以参考本文,希望能对大家有所帮助! 一提到日本动画电影,大家第一印象肯定是宫崎骏,但是日本除了宫崎 ... 
- CRL快速开发框架系列教程十三(嵌套查询)
		本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ... 
- CRL快速开发框架系列教程十二(MongoDB支持)
		本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ... 
- CRL快速开发框架系列教程十一(大数据分库分表解决方案)
		本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ... 
随机推荐
- python抓取51CTO博客的推荐博客的全部博文,对标题分词存入mongodb中
			原文地址: python抓取51CTO博客的推荐博客的全部博文,对标题分词存入mongodb中 
- slam command tool
			cd imu_ws source devel/setup.bash ls -l /dev |grep ttyUSB sudo chmod /dev/ttyUSB0 rosrun imu_pb imu ... 
- docker与虚拟化的联系与区别
			虚拟化技术是一个总称,是一系列实现虚拟技术的统称.从广义上来说,虚拟化技术包括了虚拟机技术和容器技术, 所谓虚拟化技术最大的特点就是将一个真实的机器进行虚拟地分割,然后分割出来的部分可以独立使用 ... 
- oracle快速复制表数据
			方法一: 只复制表结构: create table table_name_new as select * from table_name_old where 1=2; 然后: alter sessio ... 
- Oracle集群和灾备解决方案介绍
			Oracle本身有各种各样的解决方案,本文主要是对以下几种解决方案做一下简单的梳理. 1. Oracle Rac解决方案. Oracle Rac主要通过两台Oracle服务器来组件集群,提高Or ... 
- vmstat   命令
			vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.他是对系统的整体情况进行统计,不足之处是无法对某个进程进行深 ... 
- git学习之简介(一)
			一.前言 史上最浅显易懂的Git教程! 为什么要编写这个教程?因为我在学习Git的过程中,买过书,也在网上Google了一堆Git相关的文章和教程,但令人失望的是,这些教程不是难得令人发指,就是简单得 ... 
- Java并发基础:了解无锁CAS就从源码分析
			https://segmentfault.com/a/1190000015881923 
- hibernate 注解之 SequenceGenerator
			hibernate 注解之 SequenceGenerator https://blog.csdn.net/zgf19930504/article/details/54694807 JPA @Id 和 ... 
- python 微信跳一跳和源码解读
			刚好周末,想研究一下前阵子很火的微信跳一跳 下面进入正文. 本文适用对象为WIN10系统,安卓用户.目的在于让丝毫没有接触过Python的小伙伴都能成功运行,如果你恰好是这样的对象,那么跟着我开始操作 ... 
