Codeforces Round #657 (Div. 2)   参与排名人数8684   错过了难得17:00比赛,可惜

[codeforces 1379B]   Dubious Cyrpto  公式推导

总目录详见https://blog.csdn.net/mrcrack/article/details/103564004

在线测评地址https://codeforces.com/contest/1379/problem/B

Problem Lang Verdict Time Memory
B - Dubious Cyrpto GNU C++17 Accepted 78 ms 3900 KB

题目大意:有如下关系n*a+b-c=m,l<=a,b,c<=r,给出l,r,m,推出a,b,c.

样例模拟如下:

n*a+b-c=m可得n*a=m+c-b
l<=b<=r可得-r<=-b<=-l
l<=c<=r
可得l-r<=c-b<=r-l
继续可得m+l-r<=m+c-b<=m+r-l4 6 134 6 5m=13,l=4,r=6
13+4-6<=m+c-b<=13+6-4
即11<=m+c-b<=15n*a=m+c-b
l<=a<=r,即4<=a<=6
a=4时,m+c-b=11时,
n=11/4=2,2*4=8<11,丢弃a=4时,m+c-b=12时,
n=12/4=3,n*a=3*4=12,11<=12<=15,
此时12=13+c-b,可得c-b=-1.
让b=r,即b=6,可得c=5.2 3 12 2 3m=1,l=2,r=3
1+2-3<=m+c-b<=1+3-2
即0<=m+c-b<=2,因0<n*a,改进范围1<=m+c-b<=2n*a=m+c-b
l<=a<=r,即2<=a<=3a=2时,m+c-b=1时,
n=1/2=0,丢弃a=2时,m+c-b=2时,
n=2/2=1,n*a=1*2=2,1<=2<=2,
此时2=1+c-b,可得c-b=1.
让b=l,即b=2,可得c=3.

根据上述样例模拟过程,编写的AC代码如下:

#include <cstdio>
#include <algorithm>
#define LL long long
using namespace std;
int main(){int t,flag;LL l,r,m,a,b,c,mn,mx,i,x,y,na,delta;scanf("%d",&t);while(t--){scanf("%lld%lld%lld",&l,&r,&m);mn=max((LL)1,m+l-r);//m+1-r<=m+c-b<=m+l+rmx=m+l+r;for(a=l;a<=r;a++)//枚举a{x=mn/a,y=mx/a,flag=0;//n*a==m+c-b,n=(m+c-b)/a.x代表n的左边界,y代表n的右边界for(i=x;i<=y;i++){na=i*a;if(mn<=na&&na<=mx){delta=na-m;if(delta<0)b=r,c=r+delta;else b=l,c=l+delta;//delta>=0if(l<=c&&c<=r){//c落在范围内printf("%lld %lld %lld\n",a,b,c);flag=1;break;}}}if(flag)break;}}return 0;
}

[codeforces 1379B] Dubious Cyrpto 公式推导相关推荐

  1. Codeforces 1379B.Dubious Cyrpto

    1 题目描述(题目链接) 2 题解   由题意得,na=m+c−bna=m+c-bna=m+c−b,则na∈[m+l−r,m+r−l]na\in [m+l-r,m+r-l]na∈[m+l−r,m+r− ...

  2. Codeforces B. Dubious Cyrpto (枚举 / 模拟) (Round #657 Div.2)

    传送门 题意: 已知存在三个数a,b,c满足l <= a,b,c <= r,且m = n * a + b - c.现在告诉你l,r和m的值,需要你找到一组可行的a,b,c. 思路: 枚举a ...

  3. Codeforces Round #657 (Div. 2)B. Dubious Cyrpto

    思路 题目要求: na+b−c=mna+b-c=m na+b−c=m 我们可以转换为 na−m=c−bna-m=c-b na−m=c−b 然后c−bc-bc−b是固定不变的,我们去枚举a,在枚举的a的 ...

  4. 1379A. Acacius and String + 1379B.B. Dubious Cyrpto

    1379A 传送门 Acacius is studying strings theory. Today he came with the following problem. You are give ...

  5. Codeforces Round #657 (Div. 2) B题 Dubious Cyrpto

    m是被除数,a是除数,n的商,b-c是余数.切记,考虑b-c是负数的情况.切记 !切记 ! 二话不说上代码: #include <iostream> #include <algori ...

  6. Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(思维,数学)

    题目链接 题意: m=n⋅a+b−c(n为任意正整数),给出m的值a,b,c的范围l,r(l<=a,b,c<=r),求出a,b,c. 思路: 由推倒知0<=|b-c|<=r-l ...

  7. B. Dubious Cyrpto

    https://codeforces.com/contest/1379/problem/B 如果m>i,则有两种情况,m%i在范围内或者i-m%i在范围内,m<i,只有i-m%i的情况. ...

  8. codeforces1379B Dubious Cyrpto

    https://codeforces.com/contest/1379/problem/B 可以想到其实就是让n*a=(m-(r-l),m+r-l)中的一个数 然后直接枚举a=l->r 令l2= ...

  9. Long Path CodeForces - 407B(动态规划+思维+公式推导)

    题意: 起点为1,终点为n+1,对应第i个各点,如果我奇数次到达i点,那么下一步走到a[i]的位子,如果是偶数次到达,那么下一步走到i+1的位子. 问从1走到n+1一共需要走多少步?结果对1e9+7取 ...

最新文章

  1. retinaface tensorRT
  2. 神经网络的梯度消失和过拟合产生原因及其解决方案
  3. 当PDF页面总数不确定的时候导出PDF增加页码(i of n)
  4. Transformation HDU - 6726(百度之星复赛2019 dfs)
  5. angular.js国际化模块
  6. 5.Underfitting and Overfitting
  7. emlog-FLY主题模板1.4版本免费完全开源
  8. 《iOS网络编程与云端应用最佳实践》微博转发送书了!
  9. 安卓案例:View动画——弹球碰壁
  10. 20200802:力扣200周周赛题解
  11. windows10更新后网络无法连接的问题
  12. python差异性分析_差异性分析
  13. 机器学习数学基础十:相关分析
  14. stm32cube 和 RTX v5一起用的方法
  15. python菜鸟教程官网绘图-Python Tkinter 画布(Canvas)
  16. 数据挖掘:实用案例分析 下载_真经阁丨萌低龄,超实用“萌系”呈现技巧及设计案例分析...
  17. Python可以制作植物大战僵尸,你还不知道吗?
  18. 【论文阅读|cryoET】Isotropic reconstruction for electrontomography with deep learning (解决缺失楔问题降噪)
  19. 丑数(Ugly Number)的判别和证明
  20. python opencv写视频——cv2.VideoWriter()

热门文章

  1. Python分析照片详细拍摄地点源代码(可详细到具体酒店)
  2. 乔治亚理工学院计算机专业,佐治亚理工学院计算机专业怎么样?
  3. ucos 入门 --- 资料收集
  4. AIO-3399J重新安装Ubuntu系统-刷新固件
  5. 苹果授权登录绑定手机号被拒绝
  6. 从事SQL相关工作者可以成为数据科学家吗
  7. WordCount 官方源码解读及工程代码
  8. 纯前端导出export,复杂表格表头合并,表头数据部分动态,
  9. 超详细的css知识树状图~CSS选择器盒子模型、浮动、定位和装饰
  10. 计算机桌面右键新建展不开,右键新建中没有excel怎么办