hackerrank Lucky Numbers(扩展gcd/规律)
来源:互联网 发布:软件系统租用合同范本 编辑:程序博客网 时间:2024/06/05 08:57
题目:https://www.hackerrank.com/contests/hourrank-16/challenges/leonardo-and-lucky-numbers/problem
题意:判断N是否是4和7的和
思路:
* 1. 7*x+4*y=N 扩展gcd
* 2.两边都除以4,下图为官方题解
*
7*Y <= N
7*0%4 = 0 N>=0
7*1%4 = 1 N>=7
7*2%4 = 2 N>=14
7*3%4 = 3 N>=21
代码:
#include<iostream>using namespace std;typedef long long ll;ll exGcd(ll a,ll b,ll &x,ll &y){ if(b == 0) { x = 1; y = 0; return a; } ll r = exGcd(b,a%b,x,y); ll t = x; x = y; y = t - a/b*y; return r;}int main(){ int q; ll n; cin >> q; while(q--) { cin >> n;//7*x+4*y=n ll x = 0,y = 0; ll d = exGcd(7,4,x,y); if(n % d != 0) cout << "No" << "\n"; else { x = (x*n%4 + 4) % 4; y = (n - 7*x) / 4; if(y >= 0) cout << "Yes" << "\n"; else cout << "No" << "\n"; } } return 0;}
阅读全文
0 0
- hackerrank Lucky Numbers(扩展gcd/规律)
- CodeForces - 630C Lucky Numbers (数学规律)
- Lucky Numbers(acm)
- CodeForces-630 C. Lucky Numbers【规律递推】
- CODEFORCES630C- Lucky Numbers(水题)
- HackerRank leonardo-and-lucky-numbers —— 模线性方程的通解
- HackerRank - gcd-matrix (容斥)
- 多校联合第五场北京正常大学BNU 1002 Lucky Numbers(找规律or容斥原理?)
- Lucky Numbers
- Lucky Numbers
- Lucky Numbers
- Codeforces 122 D. Lucky Transformation (规律)
- CodeForces 630 C. Lucky Numbers(水~)
- ztr loves lucky numbers(二分,枚举)
- CodeForces 630C Lucky Numbers(递归)
- hdu ztr loves lucky numbers (暴搜)
- sgu258 Almost Lucky Numbers (数位dp)
- HackerRank - gcd-matrix
- mysql存储过程几个小案例
- Spring的环境搭建与注入
- hadoop文件上传解析
- linux下ffmpeg安装
- Objective-C的内省
- hackerrank Lucky Numbers(扩展gcd/规律)
- C语言编程代码架构搭建——代码分层
- Linux下ffmpeg的完整安装
- 使用MySQL Workbench进行数据库设计——MySQL Workbench使用方法总结
- 五分种学会用TPYBoard
- python os库使用
- HDU1824 Let's go home
- java 引用细节
- PHP扩展vld查看opcodes