SCAU-1078 破密-数学的应用
另外一种方法和该题的题目在这位大佬的博客里
还可以参考
https://blog.csdn.net/sinat_34200786/article/details/78288634--CSDN的大佬(就是对这个题目的数学的逻辑的分析了)
Description
用到了小学的数学方法,就是横坐标之差和纵坐标之差的和减去两个差的最大公约数
我的方法:
/******这其实是典型的数学题目:小学的时候就会接触的,就是在一个
直角坐标系里面,两个点连成的线会经过多少的格子,其实就是这两个点的
横坐标之差和纵坐标之差之和然后再减去两个差的最大公约数(画一下图就会知道在同一个横坐标格子的时候会可能就穿过了好几个纵坐标的格子了
这就是最大公约数的了
***********/
#include <stdio.h>
#include <stdlib.h>
//#define Abs(x) (x)>0?(x):(-x);
int gcd(int a,int b)//这就是一个常规的找最大公约数的函数gcd了
{
int y;
//if(a==0)
// return 0;
while(a%b!=)
{
y=a%b;
a=b;
b=y;
}
return b;
}
int main()
{
int x1,y1,x2,y2;
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
int m=abs(x1-x2);
int n=abs(y1-y2);
if(m<n)//由于gcd的第一个参数是要保证比第二个参数要大的
{
int temp=m;
m=n;
n=temp;
}
int ans=;//储存答案了
if(m!=&&n!=)//由于如果两个点是相同横坐标并且也是相同的纵坐标的时候,或者是相同横坐标不同纵坐标
//或者是相同纵坐标而横坐标不同的时候,都是不穿过格子的,所以就不对ans进行操作,也就是说输出已经被初始化的值ans+0 {
int w=gcd(m,n);//w是m和n的最大公约数
ans=m+n-w;//直接带入公式
}
// ans=(m+n)-gcd(m,n);
printf("%d",ans);
return ;
}
SCAU-1078 破密-数学的应用的更多相关文章
- 一次在CentOS系统单用户模式下使用passwd命令破密失败的案例
某次遇到需要进入系统的单用户模式进行破密操作,结果却显示如下: 根据提示:Permission denied(缺少权限) 此时查看/usr/bin/passwd 权限: 正常情况下的权限应该是如下: ...
- Linux Grub系统加密、破密、修复
一.在重新启动系统时候按任意键进入 grub界面 Grub加密 一.title前的密码 修改grub.conf 这种加密只是在用户要进入grub界面的时候提示要输入密码,但是可以正常进入系统,有没有 ...
- VBA 打印及破密
Sub 打印()ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=TrueCall dyEnd SubSub dy()Dim a%, b ...
- 本周 GitHub 速览:自动化当道,破密、爬虫各凭本事
作者:HelloGitHub-小鱼干 摘要:安全门外汉,如何在不知道密钥或密码的情况下,破解哈希得到原文,Ciphey 会告诉你当中的密码.说到 auto 智能爬虫会基于上一次的爬虫经历进一步学习以获 ...
- calc 多项式计算 (STL版和非STL版) -SilverN
计算(calc.cpp) [问题描述] 小明在你的帮助下,破密了Ferrari设的密码门,正要往前走,突然又出现了一个密码门,门上有一个算式,其中只有“(”,“)”,“0-9”,“+”,“-”,“*” ...
- 计算(calc.cpp)
计算(calc.cpp) [问题描述] 小明在你的帮助下,破密了Ferrari设的密码门,正要往前走,突然又出现了一个密码门,门上有一个算式,其中只有“(”,“)”,“0-9”,“+”,“-”,“*” ...
- 计算(calc.cpp) 这题我搞了2晚上qwq
终于会了!可喜可贺!可喜可贺! 计算(calc.cpp) [问题描述] 小明在你的帮助下,破密了Ferrari设的密码门,正要往前走,突然又出现了一个密码门,门上有一个算式,其中只有“(”,“)” ...
- 计算(calc)
计算(calc) [题目描述] 小明在你的帮助下,破密了Ferrari设的密码门,正要往前走,突然又出现了一个密码门,门上有一个算式,其中只有"(",")",& ...
- 2022寒假集训day5
day5 五道栈的题加上字符串. 单调队列. T1 表达式括号匹配 洛谷P1739 题目描述 假设一个表达式有英文字母(小写).运算符(+,-,*,/)和左右小(圆)括号构成,以"@&q ...
随机推荐
- 把图片在word中显示
如下: //放入word中 #region word ThreadPool.QueueUserWorkItem(//使用线程池 (P_temp) =>//使用lambda表达式 { G_wa = ...
- 不同的phper该如何区别使用swoole和workerman?
那么我们该怎样去区别应用swoole和workerman? workerman workerman纯php写的,swoole是php的c扩展,性能肯定更高,百度.腾 ...
- git命令(转)
git工作模式 工作区(代码) 暂存区 版本区(提交区.历史区) 初始化 git config --global user.name *** git config --global user.emai ...
- 数组转换成List集合
Element[] array = {new Element(1), new Element(2)};List<element> list = new ArrayList<eleme ...
- 键盘常见ascii码值
回车事件最常见,码值13 ESC键: VK_ESCAPE (27) 回车键: VK_RETURN (13) TAB键: VK_TAB (9) Caps Lock键: VK_CAPITAL (20) S ...
- Tesseract引擎编译
1. 工具包下载链接 libtiff 4.09 http://download.osgeo.org/libtiff/tiff-4.0.9.zip leptonica 1.76.0 http://www ...
- 20190723_C的三个小实现
1. 有一个字符串开头或结尾含有n个空格(“ abcdefgdddd ”),欲去掉前后的空格,返回一个新的字符串.a) 要求1:请自己定义一个接口(函数),并实现功能:b) 要求2:编写测试 ...
- Visual Studio Online,带来四种开发模式,未来已来。
北京时间 2019 年 11 月 4 日,在 Microsoft Ignite 2019 大会上,微软正式发布了 Visual Studio Online 公开预览版! 简单来说,Visual Stu ...
- NPOI 导出 excel 性能测试
NPOI 导出 excel 性能测试 Intro 网上看到很多人说 NPOI 的性能不行,自己写了一个 NPOI 的扩展库,于是想尝试看看 NPOI 的性能究竟怎么样,道听途说始终不如自己动手一试. ...
- 学习笔记07axps页面
apsx分前台文件和后台文件,前台文件(子类)是继承了后 台的aspx.cs(父类), 1.在aspx中,使用<% %>能执行一段C#代码使用<%=C#代码%>,就是直接向前台 ...