- 博客(6)
- 收藏
- 关注
原创 扩展欧几里得算法,立马懂
以辗转相除法为基础,在辗转相除的过程中求得ax+by=c的一组解。向深层递的时候求最大公因数,归的时候求出x和y的解。有ax+by=gcd(a,b) //此处x、y是上面x、y的gcd(a,b)倍,并不相等。其中步骤①显然是辗转相除法的递的过程,而步骤②是归的过程中同时求解。则有107s+37t=1,其中x=25。=gcd(b,a%b)//显然值相等。对照上图,不难发现这一规律是正确的。//其中k=a/b向下取整。(-26)//求出了s和t。=0,而每一次归遵循x=y。
2025-02-19 00:12:22
375
原创 有关原码 反码 补码
首先,数值部分为3,反码数值部分+原码数值部分=12-1,则反码数值部分等于8,补码等于反码+1=9,且补码前面的符号位所表示的数值大小为12,则补码的总值等于12+9=21,对照上面的两行表,恰好是-3的位置。0 1 2 3 4 5 6 7 8 9 10 11 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1(有符号)我们知道,在负数情况下,反码是除开符号位对原码进行取反,那么数值位原码+补码一定等于全1,即2^n-1.可以看出,为了表示负数,牺牲了一半的空间用来表示负数。
2024-09-07 22:05:00
264
原创 象棋制作过程中总结
在制作过程中最终遇到一个要判断其他棋子走动是否会引起对将时,发现要么遍历一遍地图二维数组要么重新修改每个棋子类的函数参数,前一个废性能后一个则是麻烦。总而言之这些一开始能避免的事情尽量开始就避免。在开发前一定要做好分析,需要哪些类,类有哪些属性和行为,行为对应的函数应该怎样实现传入哪些参数,这些都要确定好。
2024-04-08 15:11:30
220
原创 C++和SFML开发贪吃蛇和象棋遇到问题
开发象棋时,导入背景图片,命令行窗口莫名弹出Failed to load font "" (failed to create the font face)以及出现乱码,在反复检查自己的文件路径和文件类型没有问题后,依旧没办法解决。同时在导入字体时也出现同样情况,以为是不能兼容该字体,去网络上下载了其他字体,依旧无法解决。最后查询官方文档,官方文档在讲解将SFML链接到vs时有提到这样一句话。最后改成sfml-xxx.d.lib最终解决问题。
2024-03-27 13:46:46
595
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅