T1:
裸的exgcd
细节特特特特特特特特别多(忒忒忒忒忒忒忒忒忒忒忒忒忒忒。。。)(就是因为正整数解)
处理分类注意事项:(p就是a,q就是b)
1.p,q,c==0?
①p==0&&q==0
c==0 -> oo
c!=0 -> 0
②p==0
c%q!=0 ->0
c*q<=0 (异号或c==0)-> 0
其他 ->oo (x可以随便取)
③q==0 同上
2.p,q,c正负的讨论??
首先,ax+by=gcd(a,b)求出一组x,y不用说,
之后,x*=c,y*=c不用说。
(c%gcd!=0 无解。)
到这里a,b,c正负数都是可以的。
求出x>=0的最小非负整数解。
因为gcd可能是负数。。。所以模数就是abs(p/gcd)
若不加abs,则可能因为p/gcd 是负数,从而求得的是最大非正整数解
所以x=(x%abs(p/gcd)+abs(p/gcd))%(p/gcd)
y直接通过px+qy=c推出来
然后要分正负讨论。。。
①若p*q<0(异号)
则x,y不管当前正负与否,都可以加上无数个正数,转化到正数,再得到无穷多个解。因为负值变大了,正值也变大了,可以使得仍然等于c
②
T2:
m<=n<=2000
裸的树形背包
T3:
裸的大模拟。
细节特别多。。。。。。。。
总结:
题目特别裸
细节特别多
170pts/300pts rank2