码迷,mamicode.com
首页 > 其他好文 > 详细

acm好题集锦

时间:2014-11-22 23:13:45      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:acm   算法   计算机   竞赛   题目   

点击打开链接

最后的A*B应该是xSy的形式,其中y可以为空,并且如果S不以0开头那么x也可以为空。
首先枚举y的长度。在y的长度确定之后,显然x应该越小越好。所以从小到大枚举x。设S的长度为p,y的长度为q,那么可以列方程:((x?10p+S)?10q+y)modA=0。解出y以后,如果y<10q那么解合法。
容易证明,我们只需从0(或1,如果S以0开头)到A枚举x,那么所有的解一定会被枚举到。对于q=0的情况,x的长度不会超过4,所以y的长度也只需要枚举到4就可以了。
对于所有枚举出的长度算出的答案取最优解即可。
当然也可以用其他的枚举方法,只要枚举量大概是1万左右的数量级都是可以的。



acm好题集锦

标签:acm   算法   计算机   竞赛   题目   

原文地址:http://blog.csdn.net/u011537359/article/details/41389565

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!