ACM训练日记—10月3日

     今天的比赛题目比较简单,虽然好几道题的题意是猜的,但还好运气比较好。先上来lhj读J题(签到)没读懂,转去做H题,我读J题也没读懂,H题在两队友讨论下过了,我还是没搞懂J题讲的什么,lhj去做I题(签到),我和他确定了思路后他先去写I,我和lwy在讨论猜J到底什么意思,I题过了以后我开始着手写猜的题意的J,运气比较好猜对了。后来发现榜单上有学长的打这场比赛的记录,看到他们过了C题,还是一血,处于好奇我去做C,lhj开始着手写A题那道图论,lwy读D。C题做的人很少,但只看题意就是最裸的威左夫博弈,只是数据范围是10^100,这就意味着那个公式里面求的小数要保留100位以上,除非java大数+二分或牛顿下山法。放弃了C题,我也去看D,D题也是关于gcd的,立刻想起昨天gcd的题是把数分解为a=w*gcd(a,b)的形式后乱搞,结合队友推出的东西和已有的条件构造出一元二次方程,然后抱着试一试的心态去用浮点数算整数题代入公式求解方程,然后代码被我写炸了,其实就是输入lld少写了一个d,代码交给lwy改了半天,队友改到心态爆炸后找出了这个字母错误。。。接下来lhj开始写A题,好像思路并没有写对中途放弃,我推出F题构造方法,抱着试一试的心态开始写,居然对了,A题lhj又继续开始用比较暴力的办法写。中途我们把剩下的题目基本都读完了后我开始找书翻《数值分析》搞牛顿下山法。A题搞过后开始,C交给lhj用java大数写C的牛顿迭代。

        另外好像后来看题解感觉g题不太好做,树分治我好想不太会,也有用树形dp+FWT做的。B题那个算法还得学学,shift+and算法。E题是最应该补得题之一,是思维+树状数组原理的题目,要对树状数组理解到位恐怕才能过(E题当时是我看的,题意没怎么读懂就放弃了。。。)

       Java大数的坑挺多的,在大数除法如果除出无限循环小数时一直在报错,上网找了博客给了一种用法,必须要给出保留小数点位数和末尾小数处理情况后才能顺利运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值