1301. C 循环(扩展欧几里得算法)

news2024/11/23 17:18:27

题目如下:

在这里插入图片描述

思路 or 题解:

抽象出数学公式:
a + k ∗ c ≡ b ( m o d   1 < < k ) a + k * c \equiv b (mod\ 1 << k) a+kcb(mod 1<<k)
等价:
x ∗ c − y ∗ ( 1 < < k ) = b − a x * c - y * (1 << k) = b - a xcy(1<<k)=ba
用扩展欧几里得算法求解即可
答案就是: x 0   %   1 < < k g c d x_0\ \%\ \frac{1<<k}{gcd} x0 % gcd1<<k

AC 代码如下:

#define int long long
#define ll long long
int a, b, c, k;
int exgcd(int a, int b, int &x, int &y)
{
    if (b == 0)
    {
        x = 1, y = 0;
        return a;
    }
    int d = exgcd(b, a % b, y, x);
    y = y - a / b * x;
    return d;
}
void solve()
{
    int t = 1ll << k;
    int x, y;
    int d = exgcd(c, t, x, y);
    if ((b - a) % d)
    {
        cout << "FOREVER\n";
        return;
    }
    else
    {
        x = x * (b - a) / d;
        t /= d;
        cout << (x % t + t) % t << '\n';
    }
}
signed main()
{
    buff;
    while (cin >> a >> b >> c >> k, a || b || c || k)
        solve();
}

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

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

相关文章

[Python逆向] 逆向Pyinstaller打包的exe文件源码及保护

Python逆向Pyinstaller打包的exe文件源码及保护 写在前面 我们都知道可以使用Pyinstaller库可将.py文件编译成.exe文件运行&#xff0c;这篇文章我们就从将脚本编译成.exe并将.exe的源码内容反编译出源文件&#xff0c;再顺便谈谈如何防止被逆向。 环境工具 Python 3.6&#x…

(一)MicroPython——WIFI点灯

目录 学习目标 成果展示 硬件知识 代码 总结 学习目标 成果展示 预备知识 代码 总结 学习目标 我们今天来学习有关MicroPython的知识点&#xff0c;相比于用C语言来开发&#xff0c;MicroPython有许多的优点&#xff0c;比如可以交互&#xff0c;有大量的库可以调…

Allegro如何把快速BUS组高亮成不同颜色操作指导

Allegro如何把快速BUS组高亮成不同颜色操作指导 在做PCB设计的时候,会需要把BUS组高亮成不同颜色,方便评估与布线,Allegro支持快速把BUS高亮成不同的颜色,如下图 具体操作如下 打开颜色管理器出现颜色管理器

1576_AURIX_TC275_MTU控制与状态寄存器

全部学习汇总&#xff1a; GreyZhang/g_TC275: happy hacking for TC275! (github.com) 在这一页之前&#xff0c;连续有好几个寄存器都是预留的&#xff0c;因此可以直接跳过。访问使能寄存器的功能&#xff0c;从描述看其实是非常熟悉的&#xff0c;因为这个描述的模板可以从…

Java多线程:线程通信:生产者 和 消费者 || 顺序打印

Java多线程&#xff1a;线程通信&#xff1a;生产者 和 消费者 || 顺序打印 每博一文案 靠谱&#xff0c;是最高级的聪明&#xff1a;师父说&#xff1a;人生一回&#xff0c;道义一场。你对人对事的态度&#xff0c;藏着你一生的福报。 千金难买好人缘&#xff0c;人活的就是…

Android编译Skia库

Android编译Skia库 本文档提供两种方法编译Skia库 使用aosp源码进行编译使用skia源码进行编译 两种编译方法都可以编译,并且都可以使用在多个平台中,且可以使用在不同Android版本中 使用aosp源码编译 第一步是拿到aosp的源码.因为写这篇教程,使用的是msm8996的源码,因此,我…

Armitage图形化前端

开源免费图形前端 ● 作者自称是众多不会使用metasploit的安全专家之一&#xff08;命令行&#xff09; ● MSF基于命令行&#xff0c;缺少直观的GUI图形用户接口 Armitage只是调用MSF的漏洞利用能力 ● Armitage的每一个GUI操作都可以对应MSF中的一条命令 红队团队合作模拟…

OSCP vulhub LORD OF THE ROOT: 1.0.1

vulhub LORD OF THE ROOT: 1.0.1靶场信息&安装Description一、信息收集第一种ssh爆破第二种猜二、漏洞探测三、漏洞利用四、提权第二种方法&#xff1a;udf提权第三种缓冲区溢出提权靶场信息&安装 地址&#xff1a;https://www.vulnhub.com/entry/lord-of-the-root-10…

APSIM练习:向管理组件添加额外规则

“标准”作物管理组件没有提供很多选项来决定何时播种作物——很可能应该考虑一系列额外的种植规则&#xff08;例如&#xff0c;土壤是否足够干燥以驱动拖拉机过去&#xff1f;&#xff09;&#xff0c;并且在播种时应采取额外措施&#xff08;例如添加一些肥料&#xff09;。…

Tofu目标识别跟踪模块介绍

1.简介Tofu3 是多波段视频物体识别跟踪模块&#xff0c;支持可见光视频与红外视频的输入&#xff0c;支持激光补光变焦自适应控制&#xff0c;支持视频下的多类型物体检测、识别、跟踪等功能。产品支持视频编码、设备管理、目标检测、深度学习识别、跟踪等功能&#xff0c;提供…

服务器防勒索病毒场景分析经验分享

服务器防勒索病毒 l 场景描述 互联网飞速发展&#xff0c;各企业均搭建了自己的服务器。包括文件服务器、代码服务器、业务系统服务器、数据库服务器等。目前大多数企业使用的服务器系统以Windows Server和Linux&#xff08;Centos&#xff09;居多&#xff0c;但随着国产操作…

python从入门到实践————图形界面(上)

系列文章目录 文章目录系列文章目录前言窗体组件窗体显示显示窗体文本显示项目实践总结前言 图形用户接口&#xff08;Graphical User Interface&#xff0c;GUI&#xff09;是人机交互的重要技术手段&#xff0c;在Python中利用tkinter模块就可以方便地实现图形界面。 在你p…

每日一题:Leetcode203 移除链表元素

文章目录 系列&#xff1a;链表专练 语言&#xff1a;java & go 题目来源&#xff1a;Leetcode203 移除链表元素 难度&#xff1a;简单 考点&#xff1a;头结点 && 虚拟头结点 思路和参考答案文章目录题目描述思路java参考代码go参考代码&#xff1a;题目描述 给…

xcelium——重要特性——提高编译仿真性能

以下图片来自于CadenceTECHTALK研讨会 解决编译仿真的瓶颈问题&#xff0c;提高整体性能 影响performance的因素 xcelium版本access rwccoverage收集snapshot过大&#xff0c;加载时间过长&#xff0c;可通过Zlib加快加快snapshot加载 编译/仿真添加选项&#xff1a; -new…

如何检查自己电脑是否被攻击了?

数据来源 本文仅用于信息安全的学习&#xff0c;请遵守相关法律法规&#xff0c;严禁用于非法途径。若观众因此作出任何危害网络安全的行为&#xff0c;后果自负&#xff0c;与本人无关。 通过系统命令排查账户安全 query user # 查看当前登录账户 lo…

21.字符串的概念,字符串的可修改性

字符串和指针 字符串的概念&#xff1a; 字符串就是以 ‘\0’ 结尾的若干字符的集合。字符串的地址&#xff0c;是第一个字符的地址。可以定义一个字符指针变量保存字符串的地址。比如&#xff1a; char* shelloworld"; 字符串的存储形式&#xff1a;数组、文字常量区、…

靶机测试haclabs-no_name

靶机地址https://www.vulnhub.com/entry/haclabs-no_name,429/靶机测试nmap扫描└─$ nmap -T5 -A 192.168.1.100 -oA hl-portsStarting Nmap 7.92 ( https://nmap.org ) at 2023-01-12 11:16 CST Nmap scan report for 192.168.1.100 Host is up (0.00040s latency). Not show…

获工信部认可!腾讯牵头的《零信任系统技术规范》入选工信部百项团标应用示范

近日&#xff0c;工信部发布《关于公布2022年团体标准应用示范项目的通告》&#xff0c;由腾讯安全牵头起草&#xff0c;公安部第三研究所、国家计算机网络应急技术处理协调中心、中国移动设计院等业内16家零信任厂商、测评机构及用户联合编制的中国第一部《零信任系统技术规范…

Webpack搭建本地服务器

1、开启本地服务器 1.1、为什么要搭建本地服务器&#xff1f; 目前我们开发的代码&#xff0c;为了运行需要有两个操作&#xff1a; 操作一&#xff1a;npm run build&#xff0c;编译相关的代码&#xff1b;操作二&#xff1a;通过live server或者直接通过浏览器&#xff0…

【ROS】—— 机器人系统仿真 —URDF语法 (十三)

文章目录前言1. 概述1.1 概念1.2 作用1.3 相关组件1.3.1 URDF1.3.2 RViz1.3.3 gazebo1.4 准备2. URDF集成Rviz基本流程2.1 创建功能包&#xff0c;导入依赖2.2 编写 URDF 文件2.3 在 launch 文件中集成 URDF 与 Rviz3. URDF语法详解3.1 robot3.2 link3.3 joint3.4 URDF练习3.5 …