![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
=====基础算法=====
Lngxling
这个作者很懒,什么都没留下…
展开
-
数论模板
1. 辗转相除法(欧几里得除法) int gcd(int a,int b) { return b==0?a:gcd(b,a%b); } 或者c++直接用函数__gcd() 2.扩展欧几里得 int exgcd(int a,int b,int &x,int &y) { if(b==0) { x=1; y=0; return a; } int k=ex...原创 2018-04-15 21:51:48 · 329 阅读 · 0 评论 -
HDU - 5973 Game of Taking Stones 威佐夫博弈+高精度
威佐夫博弈的模板题 判断(√5-1)/2 *(b-a)是否和a相等 但是数据很大,用Java开了高精度,二分求√5的值 import java.util.*; import java.math.*; public class Main { public static void main(String args[]) { Scanner cin=new Scanner(Syst...原创 2018-09-30 09:16:47 · 226 阅读 · 0 评论 -
CodeForces - 768E Game of Stones —— nim博弈变种
题意: 在石堆中取石子,每次在一堆中取任意个,但是不能取这堆石子以前被取过的数量 思路: nim的变形,求出每堆石子最多能被取多少次(依次取1个2个3个等),异或起来即可 这里的1个2个3个就相当于nim博弈里的每堆石子的1 #include <iostream> #include <cstdio> #include <cmath> #include...原创 2018-10-10 10:19:25 · 348 阅读 · 0 评论