POJ1995 Raising Modulo Numbers

poj1995 Raising Modulo Numbers (整数快速幂) Raising Modulo Numbers Time Limit:1000MS Memory Limit:30000K Total Submissions:7280 Accepted:4397 Description People are different. Some secretly read magazines 阅读详情

题目大意&&思路:快速幂取模,没看题RE了2次,因为指数为0的情况,囧。。还是用自己的模板,虽然有点繁琐,但是自己的更顺眼嘛~~~

AC program:

#include<iostream>
#include<stdio.h>
#include<string.h>
#include<cstdlib>
using namespace std;
__int64 test,mod,n;
__int64 a[50000],k[50000]; 
__int64 fn(__int64 aa,__int64 kk)
{
    if(kk==0)return 1; 
    if(kk==1)return aa%mod;
    __int64 tmp=fn(aa,kk/2);
    __int64 tmppp=tmp*tmp%mod;
    if(kk&1)return tmppp*aa%mod;
    return tmppp;    
} 
int main()
{
cin>>test;
while(test--)
{
   cin>>mod;
   cin>>n;
   for(int i=0;i<n;i++)
      cin>>a[i]>>k[i];
   __int64 sum=0;            
   for(int i=0;i<n;i++)
   {
       //cout<<"fn(a[i],k[i]) "<<fn(a[i],k[i])<<endl; 
       sum=(sum%mod+fn(a[i],k[i])%mod  )%mod; 
   }
   cout<<sum<<endl; 
} 
//system("pause"); 
return 0;} 



 

总结:

1.模取运算的性质

(1)(a+b)%c = ((a%c)+(b%c))%c

(2)(a*b)%c = ((a%c)*b)%c

2.快速幂乘计算a^b

(1)a,b都为正数,将b二进制化

(2)时间复杂度为logb,乘法次数不是最少的

__int64 power = 1;

while(b > 0){

if(b&1) power *= a;

a *= a;

b >>= 1;

}

return power

3.快速模幂(蒙哥马利算法)

__int64Power(int a,int b,int c)                          //这个做法好
{
//计算(a^b)%c
int digit[32];
int i, k;
__int64 power=1;
i =0;
while(b)
{
digit[i++]= b%2;
b >>=1;
}
for(k = i-1; k >=0; k--)
{
power=(power* power)% c;
if(digit[k]==1)
{
power=(power * a)% c;}
}
return power;
}

4、

int exp_mod(int a,intb,int n){
    intr=1;
    while(b){
        if(b&1)r=(r*a)%n;
        a=(a*a)%n;
        b>>=1;      
    }
    returnr;
}

Cadence17.4 Allegro PCB制板(gerber / 光绘)文件输出的顺序及注意点 Cadence Allegro PCB制板文件输出 (gerber 光绘文件输出) 阅读详情

相关推荐

SRAM Bank数量配置:性能、面积与功耗的权衡指南

SRAM(静态随机存取存储器)是芯片设计中的关键存储单元,其Bank数量配置直接影响访问延迟、吞吐率、功耗和面积。Bank切分通过将存储阵列分区,缩短位线和字线延迟,从而提升性能,但会增加外围电路开销。合理配置Bank数量可优化PPA(性能、功耗、面积),在28nm和16nm工艺下,2个Bank通常是性价比最高的选择。本文基于实测数据,探讨不同场景下的Bank配置策略,帮助工程师避免常见误区,提升设计效率。

weixin_27230891的博客 179

快速幂-poj1995

Language: Default Raising Modulo Numbers Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 4103   Accepted: 2335 Description People are different. Some s

龙崎的专栏 1083

深信服桌面云实战:从零部署到高效运维的配置全景指南

本文详细介绍了深信服桌面云从零部署到高效运维的全流程配置指南,涵盖硬件规划、平台部署、虚拟桌面发布、终端管理及性能优化等关键环节。特别强调了双万兆网络架构、分布式存储配置和智能调度功能的应用,帮助用户实现高性能、高可用的虚拟桌面环境。

weixin_28568819的博客 401

POJ 1995(快速幂)(中文)

Description 人是不同的。有些人偷偷看充满了有趣的女孩的杂志,有些人在地窖里制造原子弹,有些人喜欢使用WINDOWS,有些人喜欢数学游戏。最新的市场调查显示,这一细分市场目前被低估了,而且缺乏这样的游戏。这种游戏因此被纳入了科科达克运动。运动的遵循的规则: 每个玩家选择两个数字Ai和Bi,并把它们写在一张纸条上。其他人看不到这些数字。在一个特定的时刻,所有的玩家都会向其他玩家展示他们...

niuniu0205的博客 3075

KUKA .RSI 软件包

KUKA RSI软件包通过XML文件使得机器人与外部设备(传感器通讯)通讯成为了可能,但仍存在诸多限制,该模块最多允许9台设备进行连接,有限的IO口,匮乏的功能,并且需要投入大量精力琢磨相关说明文档。为此开发人员针对KUKA实时通讯,做了一些开源的接口使得上位机与机械臂的通讯更为简单。

huhu7777的博客 3293

论文理解【LLM-OR】—— 【PaMOP】Guiding Large Language Models in Modeling Optimization Problem

针对 LLM 求解运筹优化任务,PaMOP 通过约束划分树分离子问题,实现复杂优化问题的分块建模,并结合求解器反馈与反向翻译一致性检查迭代纠错,降低子任务复杂度,提升可执行率与建模准确性。

佚失的诗篇 1006

Causal Forcing技术:实时视频生成的突破与应用

实时视频生成技术是计算机视觉领域的重要研究方向,尤其在交互式应用中需要平衡画质与响应速度。传统扩散模型虽然能生成高质量视频帧,但计算延迟较高。Causal Forcing技术通过重构蒸馏损失函数,将教师模型的知识压缩进学生模型,实现了单次前向传播即可生成高质量视频帧的能力。该技术在RTX 4090上实现了1280×720分辨率下40ms/帧的生成速度,同时保持PSNR>32dB的视觉质量。其核心创新包括时序掩码注意力重加权、动态梯度裁剪策略和混合精度蒸馏管道。这些技术不仅提升了视频生成的效率,还在云游戏、虚

weixin_34393428的博客 306

第二节:Vben Admin 最新 v5.0 (vben5) + Python Flask 快速入门 - Python Flask 后端开发详解(附源码)

大家好,我是cuiwin!本节内容,我们从零开始开发基于Python(Flask)的后端项目,对接Vue Vben Admin(vben5)。登录mysql数据库执行: 创建数据库。

cuiwin的专栏 2264

Raising Modulo Numbers[POJ1995]

题意描述 求∑i=1naibimod&ThinSpace;&ThinSpace;p求\sum_{i=1}^{n}a_{i}^{b_{i}}\mod p求∑i=1n​aibi​​modp 思路 和ab一样套路和a^{b}一样套路和ab一样套路 代码 #include<cstdio> #include<cstring> #include<algorith...

lb2003 346

系统架构设计师备考攻略

计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试。 软考没有学历、专业、年龄、相关工作经验要求,你可以根据自身选择合适的去报名(也就是说你直接直接报高级),但是一次考试只能报一种。 计算机软件资格考试纳入全国专业技术人员职业资格证书制度的统一规划,实行统一大纲、统一试题、统一标准、统一证书的考试办法,每年举行两次。通过考试获得证书的人员,表明其已具备从事相应专业岗位工作的水平和能力,用人单位聘任相应专业技术职务(助理工程师、工程师、高级工程师)。

帅次的博客 7163

java.sql.SQLIntegrityConstraintViolationException: #23000

java.sql.SQLIntegrityConstraintViolationException: #23000**异常信息****异常原因****解决方法** 异常信息 ### Cause: java.sql.SQLIntegrityConstraintViolationException: #23000 ; #23000; nested exception is java.sql.SQLIntegrityConstraintViolationException: #23000] with root c

123 4352

poj 1995 裸快速幂

1、poj 1995 Raising Modulo Numbers 2、链接:http://poj.org/problem?id=1995 3、总结:今天七夕,来发水题纪念一下。。。入ACM这个坑也快一年了 题意:求ai^bi和模m。裸快速幂 #include<iostream> #include<cstring> #include<cmath...

weixin_30273175的博客 143

Open3D 计算点云法向量的夹角【2026最新版】

计算法向量的夹角,博客长期更新,本文最新更新时间为:2026年3月7日。

点云侠的博客 3131

【POJ 1995】 Raising Modulo Numbers

【题目链接】 http://poj.org/problem?id=1995 【算法】 快速幂 【代码】 #include <algorithm> #include <bitset> #include <cctype> #include <cerrno> #...

128

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

POJ 1995 Raising Modulo Numbers

Raising Modulo Numbers Time Limit:1000MS Memory Limit:30000K Total Submissions:12805 Accepted:7626 Description People are different. Some secretly read magazines full of inte...

~ 395

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

POJ 1995 Raising Modulo Numbers

People are different. Some secretly read magazines full of interesting girls' pictures, others create an A-bomb in their cellar, others like using Windows, and some like difficult mathematical games.

nankeyimeng的博客 1113

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

POJ1995:Raising Modulo Numbers

二进制前置技能:https://www.cnblogs.com/AKMer/p/9698694.html 题目传送门:http://poj.org/problem?id=1995 题目就是求\(\sum_{i=1}^na[i]^{b[i]}mod\) \(m\)。我们只要会快速求\(a^b\)就行了。 我们可以用二进制拆分思想,把\(a^b\)转化成\(a^{(1010...1)_2}\...

aga28832的博客 210

【POJ 1995】Raising Modulo Numbers

Raising Modulo NumbersDescriptionPeople are different. Some secretly read magazines full of interesting girls’ pictures, others create an A-bomb in their cellar, others like using Windows, and some lik

楚江枫 494

Raising Modulo Numbers POJ - 1995

入门的快速幂 要注意的是x^p的范围没给 用int会爆 最保险的 还是用long long /* author:hdsdogge begin: end: cost: */ #include<iostream> #include<string> #include<queue> #include<map> #inc...

aksklbls868171的博客 172

poj 1995 Raising Modulo Numbers 【快速幂 裸题】

Raising Modulo Numbers Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5415   Accepted: 3157 Description People are different. Some secretly read magazines f

世界很大 1886

【poj1995】Raising Modulo Numbers

Description People are different. Some secretly read magazines full of interesting girls’ pictures, others create an A-bomb in their cellar, others like using Windows, and some like difficult mathema...

lhh的博客 268

POJ 1995 Raising Modulo Numbers (快速幂)

Raising Modulo Numbers Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5043   Accepted: 2930 Description People are different. Some secretly read magazines

TaoSama's Microcosm 503
上一篇: POJ1408 Fishnet
下一篇: STL中的unique和erase
muximuxi525
博客等级 码龄15年 134粉丝 294原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值