hdu5666

news/2025/1/24 17:33:47/

题目大意:给定T组数据,每组数据给定q和P,问直线x+y=q在第一象限形成的三角形内部有多少个整数点,结果对P

取模;

数据范围: 1≤T≤10
,1≤q≤1018, 1≤P≤1018

题目解答:俄罗斯乘法(复杂度:O(log2q)
) / Java大数取模(复杂度:O(1)) / 大数乘法取模转换为作差求余数(复杂度:O(1))
  原题实际上为求∑i=1q−2imodP=(q−2)∗(q−1)/2modP,由于q的范围很大,直接乘爆long long,采用俄罗斯乘法,或者用Java大数
  另外一种思路,由于a∗bmodp=a∗b−⌊a∗b/P⌋∗P ,⌊⌋

表示向下取整,可以把大数乘法取模转换为作差求余数

题目代码:
俄罗斯乘法

#include <cstdio>
#include <cstring>
#include <iostream>
#include <bitset>
using namespace std;//俄罗斯乘法(快速积)
long long mul(long long a, long long b, long long p)
{long long ans = 0;for(; b; b >>= 1){if(b & 1) ans = (ans + a) % p;a = a * 2 % p;}return ans;
}int main()
{int t;cin >> t;while(t--){long long q, p, ans;cin >> q >> p;if(q % 2)ans = mul((q-1)/2, q-2, p) % p;elseans = mul(q-1, (q-2)/2, p) % p;cout << ans << endl;}
}

http://www.ppmy.cn/news/144882.html

相关文章

和平精英为什么服务器显示错误,和平精英为什么会出现错误代码5567?_和平精英错误代码5567解决步骤一览...

和平精英错误代码5567怎么办&#xff1f;有时候在和平精英游戏中会遇到错误代码5567&#xff0c;错误代码5567是什么原因造成的&#xff1f;又该怎么解决呢&#xff1f;一起来了解一下吧。 和平精英错误代码5567怎么办 1.安装包文件丢失 这是因为玩家在更新安装包时&#xff0c…

CentOS7 安装 cri-o 运行时的 Kubernetes

文章目录 1. 环境2. 安装 crio3. 安装 Kubernetes4. 无法运行容器 1. 环境 系统&#xff1a;CentOS Linux release 7.7.1908 (Core) Kubernetes: 1.25.4 Cri-o: 1.25 2. 安装 crio 根据官方文档&#xff1a; curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable…

彻底解决共享打印机时报错误代码0x0000011b或0x00000709或0x000006d9提示错误系统Win10/Win8/Win7/XP等

最近发现很多Win10/Win8/Win7/XP系统用户连接或安装局域网共享的打印机时出现很多问题&#xff0c;常见的错误代码是0x0000011b和0x00000709或0x000006d9这三个错误。如下图所示&#xff1a; 要如何解决呢&#xff1f;下面来讲一下如何解决这两个问题。 1.键盘组合键徽标键WinR…

56676

sdfsdfsdfsdf

linux系统USB调试命令笔记

查看USB总线拓扑 lsusb -t or lsusb例1 罗列当前系统下所有的USB Port lsusbOutput:Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 001 Device 001: ID 1d6b:000…

OpenvSwitch 中使用 QoS 进行限速和整流

OVS自身并不实现QoS功能&#xff0c;QoS功能的实现是在linux内核中&#xff0c;OVS只是能够配置部分OVS支持的QoS类型。 如果需要一些OVS不支持的QoS类型&#xff0c;可以通过patch来支持这些配置&#xff0c;也可以通过传统的TC流量控制工具直接进行QoS的策略配置。 文章目录…

5547

题意就是做一个4*4的数独&#xff0c;之前做过9*9的&#xff0c;没什么取巧的&#xff0c;也就是用深搜 比较不一样的是&#xff0c;这道题在有多组解得时候要把解都输出&#xff0c;要用到回溯法 时间还是有点长的&#xff0c;勉强过了吧 #include #include #include #inclu…

RDM6300 125KHz ID卡读卡器

RDM6300 RDM6300是一个针对125KHz ID卡的读卡模块, 用于读取EM4100兼容ID卡信息, 由一片C8051F330和一片LM358D双运放组成 注: EM4100, 4200卡是只读的, 复制卡, 是把T5577/5557/5567/EM4305卡设置成EM4100格式的ID卡 Pin definition 第一组 5 pin, 方脚(靠外)是PIN1 串口波特率…