区块链技术博客
www.b2bchain.cn

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

这篇文章主要介绍了Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(思维,数学)的讲解,通过具体代码讲解7397并且分析了Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(思维,数学)的讲解的详细步骤与相关技巧,需要的朋友可以参考下

本文实例讲述了Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(思维,数学)的讲解。分享给大家供大家参考文章查询地址https://www.b2bchain.cn/7397.html。具体如下:

题目链接

题意:

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,然后枚举看能否有m%a或者a-m%a能够>=0或<=r-l即可。

代码:

#include<bits/stdc++.h> using namespace std; #define int long long #define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); const int N=2e5+7; const double eps=1e-8; const int mod=1e9+7; const int inf=0x7fffffff; const double pi=3.1415926535; signed main() {     IOS;     int t;     cin>>t;     while(t--)     {         int a,b,m;         cin>>a>>b>>m;         for(int i=a;i<=b;i++)         {             int ret=m%i,op=m/i;             int res=i-ret;             if(ret<=b-a&&op)             {                 cout<<i<<" "<<a+ret<<" "<<a<<endl;                 break;             }             else if(res<=b-a)             {                 cout<<i<<" "<<b-res<<" "<<b<<endl;break;             }         }     }     return 0; }  

本文地址https://www.b2bchain.cn/7397.html

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(思维,数学)的讲解
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们