Acwing.875 快速幂

news2024/12/27 14:57:52

题目

给定n组ai , bi, pi,对于每组数据,求出akimod pi的值。

输入格式

第一行包含整数n。
接下来n行,每行包含三个整数ai , bi,pi。输出格式
对于每组数据,输出一个结果,表示aibimod pi的值。
每个结果占一行。

数据范围

1≤n ≤100000,
1 ≤as, bi, pi≤ 2* 109

##C++代码

#include <iostream>
#include <algorithm>
using namespace std;
typedef long long LL;
// a^k % p
int qmi(int a, int k, int p)
{
	int res = 1;
	while (k)
	{
		if (k & 1) res - (LL)res * a % p;
		k >>= 1;
		a = (LL)a * a % p;
	}	
	return res;
}
int main()
{
	int n;
	scanf("%d"&n);
	while (n -- )
	{
		int a, k, p;
		scanf("%d%d%d",&a,&k,&p);
		printf("%d\n", qmi(a,k, p));
	}
	return 0;
}

java代码(非本题代码,但同样为快速幂代码,为博主系统学习之前自己查阅资料自学时用的代码)

public static long fastPower(long a,int n){
        int ans=1;
        while (n != 0) {
            if((n&1)!=0){
                ans*=a;
            }
            a*=a;
            n>>=1;

        }
        return ans;
    }

思路

快速幂的代码很短很简单,大家可以选择背诵,当然也可以理解,理解记得更久嘛。以下图片为快速幂的推导
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/820227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

诚迈科技承办大同首届信息技术产业峰会,共话数字经济崭新未来

7月28日&#xff0c;“聚势而强共领信创”2023大同首届信息技术产业峰会圆满举行。本次峰会由中共大同市委、大同市人民政府主办&#xff0c;中国高科技产业化研究会国际交流合作中心、山西省信创协会协办&#xff0c;中共大同市云冈区委、大同市云冈区人民政府、诚迈科技&…

git下载太慢

git官网下载git太慢 阿里git地址 下载适合自己的版本

24考研数据结构-串的模式匹配kmp以及优化

目录 4.2串的模式匹配4.2.1朴素模式匹配算法时间复杂度分析&#xff1a; 4.2.2改进的模式匹配算法——KMP算法1. 求next数组2. 利用next数组进行模式匹配3. 时间复杂度分析 4.2.3 next数组的优化思路nextval&#xff0c;优化KMP 概括数据结构&#xff1a;串模式匹配与KMP算法及…

windows编译新版本linphone

目录​​​​​​​ 环境 获取源码(使用5.0.0版本5.3.0-alpha有问题编译不过) 编译环境准备 编译&#xff08;使用ninja&#xff09; 编译&#xff08;不适用使用ninja&#xff09; 报错解决 linphone-desktop是一款基于SIP的标准开源网络电话系统&#xff0c;它使用了Qt…

下载编译瑞芯微提供的源码1-RK3568

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、下载源码二、编译瑞芯微原厂源码三、电源检查一、下载源码 1.下载 android11 的源码,在网盘资料“iTOP-3568 开发板/iTOP-3568 开发板光 盘资料/20220301(第三版资料)/04_Android11 源码”目…

Python(五十三)列表元素的添加操作

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

leetcode:1757. 可回收且低脂的产品

难度&#xff1a;简单 表&#xff1a;Products ---------------------- | Column Name | Type | ---------------------- | product_id | int | | low_fats | enum | | recyclable | enum | ---------------------- 在 SQL 中&#xff0c;product_id 是这个表…

Spring框架 —— AOP面向切面编程

前言 前面荔枝已经梳理了Spring框架中的IOC部分的知识&#xff0c;接下来荔枝继续梳理Spring框架的另一大重点&#xff1a;AOP面向切面编程。在这篇文章中&#xff0c;荔枝会着重弄清楚AOP的概念并对实现AOP的两种方式进行梳理&#xff0c;同时荔枝也会相应给出代码样例。毕竟荔…

Java面向对象的三大特征

Java面向对象的三大特征 java面向对象的三大特征&#xff1a;“封装、继承、多态”。更多Java技术知识&#xff0c;请登陆疯狂软件教育官网。微信搜索微信号&#xff1a;疯狂软件&#xff0c;参加2015年优惠活动&#xff0c;有机会获得优惠劵和代金劵。 以本文为例&#xff0c…

【腾讯云 Cloud studio 实战训练营】搭建Next框架博客——抛开电脑性能在云端编程(沉浸式体验)

文章目录 ⭐前言⭐进入cloud studio工作区指引&#x1f496; 注册coding账号&#x1f496; 选择cloud studio&#x1f496; cloud studio选择next.js&#x1f496; 安装react的ui框架&#xff08;tDesign&#xff09;&#x1f496; 安装axios&#x1f496; 代理请求跨域&#x…

价格管控有哪些有效的方法

品牌在面对线上店铺的低价、窜货时&#xff0c;需要及时进行干预治理&#xff0c;否则低价效应会蔓延&#xff0c;会有越来越多的店铺跟价&#xff0c;导致渠道更加混乱&#xff0c;但是管控价格也非一时之事&#xff0c;需要品牌按流程治理。 力维网络有多年价格管控经验&…

OpenLayers入门,OpenLayers如何加载TMS瓦片服务,以腾讯地图TMS图层为例

专栏目录: OpenLayers入门教程汇总目录 前言 本章讲解OpenLayers如何加载TMS图层服务到地图上,TMS图层介绍请参考《Gis开发入门,OpenLayers、Leaflet、Maplibre-gl和Cesiumjs地图引擎介绍以及几种地图服务vms、vmts、TMS和XYZ介绍》,下面介绍一下TMS图层和XYZ图层的区别。…

Halcon GPU算法加速测试

Halcon GPU算法加速测试 基本流程 官方加速程序&#xff1a;compute_devices.hdev 1.获取显示本机显卡信息 2.打开、激活设备、准备测试数据 3.GPU 循环测试执行 (affine_trans_image) 4.GPU 循环测试执行(affine_trans_image) 数据传入传出 5.CPU 循环测试执行(affine_…

mysql主从配置及搭建(gtid方式)

一、搭建主从-gtid方式 搭建步骤查看第一篇。bin-log方式。可以进行搭建1.1 gtid和二进制的优缺点 使用 GTID 的主从复制优点&#xff1a; 1、简化配置&#xff1a;使用 GTID 可以简化主从配置&#xff0c;不需要手动配置每个服务器的二进制日志文件和位置。 2、自动故障转移…

【Docker】Docker中安装MySQL数据库

文章目录 1. 前言2. Docker中安装MySQL服务2.1. 查看可用的MySQL版本2.2. 拉取MySQL镜像2.3. 查看本地镜像2.4. 运行容器2.5. 查看正在运行的容器2.6. 查看容器内部2.7. 授权root远程登录2.8. 在宿主机连接到容器的MySQL2.9. 用Navicat连接容器的MySQL 3. 如果是MySQL8.0可能需…

vue项目开发常用工具类

防止重复造轮子&#xff0c;将经常用的函数进行记录&#xff0c;也参考网上的并一起进行记录&#xff0c;后续会持续更新常用到的函数工具类方法&#x1f609;&#x1f609; /** 验证手机号是否合格* true--说明合格*/ export function isPhone(phoneStr) {let myreg /^[1][3,…

VMware vCenter Server Appliance VCSA 备份还原

vCenter是VMware管理员的常备工具&#xff0c;要保护它的安全&#xff0c;我们可以借助vCenter备份还原方式来达成目的。 怎么备份vCenter 7.0&#xff1f; vCenter备份包括vCenter Server核心配置、资源清册和历史数据&#xff0c;如统计信息、事件和任务。接下来&#xff0…

【LeetCode每日一题】——1572.矩阵对角线元素的和

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 矩阵 二【题目难度】 简单 三【题目编号】 1572.矩阵对角线元素的和 四【题目描述】 给你一…

HTTP之Session、Cookie 与 Application

目录 简介cookiecookie生命周期 sessionsession生命周期 HTTP cookies示例application 简介 cookie、seesion、application三个都会缓存我们用户状态的数据&#xff0c;使得我们在浏览器访问网站时可以更快速的获取到信息。 主要原因在于HTTP协议是无状态的&#xff0c;我们每…

IO流(4)- 序列化流与反序列化流

目录 1. 序列化流与反序列化流的基本介绍 2. 序列化流的基本用法&#xff1f; 3. 序列化流的作用&#xff1f; 4. 反序列化流的基本用法&#xff1f; 5. 反序列化流的作用 6. 序列化流与反序列化流使用时需要注意的细节&#xff08;非常重要&#xff09; 6.1 被序列化的…