首页 > 其他分享 >64位整数乘法

64位整数乘法

时间:2023-05-22 13:45:45浏览次数:30  
标签:int res 整数 64 加法 输入 乘法

题目描述

求 a 乘 b 对 p 取模的值。

输入格式

第一行输入整数a,第二行输入整数b,第三行输入整数p。

输出格式

输出一个整数,表示a*b mod p的值。

数据范围

1≤a,b,p≤10^18

输入样例

3
4
5

输出样例

2

分析

考虑到a,b,p的数据范围都非常大,无法直接先取模再相乘计算,由于可以将乘法转换为加法,即将a*b转换为b个a相加,所以可以借助快速幂算法的思想,将快速幂中乘法思想转换为加法思想即可快速实现上述加法运算。

代码实现

#include<iostream>
using namespace std;
#define int long long
signed main(){
    int a,b,p,res=0;
    cin>>a>>b>>p;
    while(b){
        if(b&1)res=(res+a)%p;
        a=(a+a)%p;
        b>>=1;
    }
    cout<<res%p<<endl;
    return 0;
}

标签:int,res,整数,64,加法,输入,乘法
From: https://www.cnblogs.com/hxss/p/17420383.html

相关文章

  • 【iOS】MD5 与Base64 的区别
    MD5不可逆性(只能加密)。任意长度的明文字符串,加密后得到的密文字符串是长度固定的。Base64可逆性(能加密和解密)。可以将图片等二进制文件转换为文本文件。可以把非ASCII字符的数据转换成ASCII字符,避免不可见字符。......
  • 跨域图片转base64
    <script>functionImgToBase64(img){varcanvas=document.createElement('canvas');varctx=canvas.getContext('2d');canvas.height=img.height;canvas.width=img.width;ctx.drawImage(img,0,0);vardataURL=canvas.toData......
  • 计算机组成原理:阵列乘法器设计实验
    实验名称:1.2阵列乘法器设计实验实验目的了解运算器的组成结构。基于数据通路图,观测并分析运算器的工作原理。基于信号时序图,观测并分析运算器的工作原理。实验设备PC机一台,TDX-CMX实验系统一套。实验预习画出4*4阵列乘法器原理图,分析延迟与哪些因素有关。答:(上传图片......
  • 5.1 从键盘任意输入一个整数,不使用计算绝对值函数编程计算并输出该实数的绝对值
    设计思路:对正数和负数分情况编程,编程设计程序代码:#include<stdio.h>intmain(){inta;scanf("%d",&a);if(a<=0){a=-a;printf("%d",a);}elseprintf("%d",a);return0;}总结:if判断语句应用。......
  • Intel公布全新架构x86S!纯64位模式运行:指令集大幅精简
    在iOS生态中,苹果已经完全淘汰了32位,安卓领域也在加速,设计APP、操作系统、处理器等多方面。而对于PC电脑而言,Intel似乎要“大动干戈”了。Intel已经提出一种全新架构名为x86S,即x86-64ISA简化版,其独特的地方在于纯64bit模式运行的设计。当然,别担心,在技术白皮书中,Intel表示,纯64......
  • 整数逆序
    题目:细节:输入int,放回StringclassIntegerReverseOrder{publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);intnumber=input.nextInt();Strings=String.valueOf(number);//int整数变成Strin......
  • X86、AMD64、X86_64、X64
     001、X86: x86是指intel的开发的一种32位指令集,官方文档里面称为“IA-32”  002、AMD64: AMD抢跑了,比Intel率先制造出了商用的兼容x86的CPU,AMD称之为AMD64,同时兼容32位和64位。 003、X86_64: intel不得不在时机落后的情况下也开始支持AMD64的指令集,但是换了......
  • 浅谈同余1(常用定理和乘法逆元)
    点个赞吧,球球了~下一篇:$浅谈同余2(扩展欧几里得,中国剩余定理,BSGS)$https://www.acwing.com/file_system/file/content/whole/index/content/7882318/ $\LaTeX$太多了,分成几个部分0x00总写(瞎说)同余是数学中非常重要的东西,这里会写出同余的基本运用若$a\bmodm=b\bmo......
  • 编写程序,随机产生30个1-100之间的随机整数,按5行6列的格式输出
    大家好,我是皮皮。一、前言前几天在某乎上看到了一个粉丝提问,编写程序,随机产生30个1-100之间的随机整数并存入5行6列的二维列表中,按5行6列的格式输出?这里拿出来跟大家一起分享下。二、实现过程后来问了【ChatGPT】,给出的回答如下:以下是一个Python程序来实现上述任务:#coding:utf-8......
  • 实验二十 128×64点阵型液晶显示实验
    实验二十128×64点阵型液晶显示实验实验目的1、了解点阵型液晶显示器的工作原理。2、了解点阵型液晶显示器控制方式。实验说明1、本实验箱采用内置控制器、不带字库的图形点阵液晶显示模块,点阵数为128×64。它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成,可完成......