zoukankan      html  css  js  c++  java
  • p1265

           突然想起来自己还有个博客要经常写。。

           昨天先是把《程序员的数学》看完了,好看是好看,但是编程用得上的很少我还都会。然后开始复习动态规划,翻看学长们的ppt,感觉学到了很多。

           做的前几道题都挺简单的,但是P1265就花了我一晚上时间,这里着重讲一波。

           刚开始觉得和之前差不多,写了个

                                            

    然后把a[n][m]一输出,感觉挺对。但是输出位置我就很蒙蔽了。想了很久后认为要从根本处着手改一下(可能叫状态转移方程?),于是想到了新的方程

    完美,这样就可以在更新状态的时候顺便判断要不要放进去。

    这时候想起了学的并不是很好的并查集,决定试一下。

    但是这样肯定也不对啊,比如第一个花瓶我输出哪个就不知道。

    就又从头思考这个题,考虑从后往前判断不就好了,然后就这样搞了

    第一排的预处理就不说了,flag先全部赋值成0用ans[0][i]保存位置,输出ans[n][m]和ans[0][i]就好了,感觉非常的对。

    然后交上去发现有一组数据过不了,第三个应该输出12,但是我输出了20。看着一大群数据很尴尬,我也不能自己手算吧,输出一波ans[3][12]和ans[3][20]发现是一样的。那证明第三个花放在12与20是等价的,而题目要求字典序排列。

    然后我就回寝想这个问题,怎么样保证合法还要输出字典序呢?然后今天早上起来坐在实验楼楼梯上睡觉的时候就想出来了。

    哎呀我怎么这么机智,赶紧交上去了,然后来写博客。

           

  • 相关阅读:
    一次网络IO优化的讨论
    服务器框架回顾
    一个小工具:DebugFile
    TPO-23 C2 Advice on choosing courses
    TPO-23 C1 Post a student announcement
    TPO-22 C2 Revise a music history paper
    TPO-22 C1 Complain about a biased article
    TPO-21 C2 Which elective courses to take
    TPO-20-Apply for the undergraduate research fund
    TPO-21 C1 Find a building for orientation
  • 原文地址:https://www.cnblogs.com/qywyt/p/8553362.html
Copyright © 2011-2022 走看看