news 2026/5/16 16:05:32

剩下的数【牛客tracker 每日一题】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
剩下的数【牛客tracker 每日一题】

剩下的数

时间限制:1秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

牛牛有一个由l … r l…rlrr − l + 1 r−l+1rl+1整数组成的环。

牛妹对这个数环进行了m mm次询问,每次给定一个整数x xx问牛牛操作到不能继续操作时最少会剩下几个数。

每一次操作,牛牛都会选择环上一段(可以是整个环),这一段数的和应该为x xx的倍数,然后牛牛就会删去这一段,同时把剩下的数按顺序重新连成一个环。

输入描述:

本题采用多组案例输入,第一行一个整数T TT代表案例组数。
每组案例中,第一行输入两个空格分隔的整数:l llr rr
接下来一行输入一个整数m mm
接下来m mm行,每行输入一个数x xx代表询问。
保证:
0 < l < r < 1 0 9 0<l<r<10^90<l<r<109
0 < x ≤ ( r − l + 1 ) 0<x≤(r−l+1)0<x(rl+1)
单个测试点中所有案例m mm的和不超过1 0 5 10^5105

输出描述:

对于每组案例,输出共m mm行,每行一个整数代表牛妹询问的答案。

示例1

输入:

1 1 5 2 2 3

输出:

1 0

解题思路

首先计算l llr rr的整数和s u m sumsum(利用等差数列求和公式s u m = ( l + r ) ∗ ( r − l + 1 ) / 2 sum=(l+r)*(r-l+1)/2sum=(l+r)(rl+1)/2,避免逐个数累加,适配l llr rr1 e 9 1e91e9的规模),对于每组案例的每个询问x xx,核心依据环结构的操作特性判断结果:若s u m sumsumx xx的倍数,说明可将整个数环作为一段删去,最终剩下0 00个数;若s u m sumsum不是x xx的倍数,由于无法删完所有数,操作到不能继续时最少剩下1 11个数;该方法单次查询仅需一次模运算,时间复杂度为O ( 1 ) O(1)O(1),适配单个测试点中m mm的和达1 e 5 1e51e5的大规模查询,无需复杂操作模拟,直接通过数学判断精准输出每个询问的结果。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=1e5+10;intmain(){ll t;cin>>t;ll sum=0;while(t--){ll l,r,m;cin>>l>>r>>m;sum=(l+r)*(r-l+1)/2;while(m--){ll x;cin>>x;if(sum%x==0)cout<<0<<endl;elsecout<<1<<endl;}}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 13:45:24

AspectJ、Spring AOP 与 Solon AOP:Java AOP 框架的三剑客

在 Java 企业级应用开发中&#xff0c;面向切面编程&#xff08;AOP&#xff09;是解决横切关注点&#xff08;如日志、事务、安全等&#xff09;的核心技术。它允许我们将这些通用功能从业务逻辑中分离出来&#xff0c;实现更高的模块化和代码复用。然而&#xff0c;不同的生态…

作者头像 李华
网站建设 2026/4/27 5:45:07

c语言——栈和队列

1.栈 1.1栈的概念及结构 1.1.1概念 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。栈中的数据元素遵守后进先出LIFO&#xff08;LastInFirstOut&#xff09;的则。…

作者头像 李华
网站建设 2026/5/16 9:12:02

Activiti7工作流(五)流程操作

文章目录1、流程定义1.1、概述1.2、.bpmn文件2、流程定义部署2.1、概述2.2、单个文件部署方式2.3、压缩包部署方式2.4、操作数据表3、启动流程实例3.1、概述3.2、操作数据表4、任务查询5、流程任务处理6、流程定义信息查询7、流程删除8、流程资源下载9、流程历史信息的查看1、流…

作者头像 李华
网站建设 2026/5/10 5:53:20

U-boot 源码结构

U-Boot 的源代码采用模块化分层设计&#xff0c;其文件结构清晰划分功能模块&#xff0c;以下是典型源码树的核心目录解析&#xff08;以最新稳定版为例&#xff09;&#xff1a;顶级目录结构概览 u-boot/ ├── arch/ # 处理器架构相关代码 ├── board/ #…

作者头像 李华