zoukankan      html  css  js  c++  java
  • csp-s模拟测试53

      有时间就多写两篇。。。

      T1:对于一个矩阵,每次给一个下三角(半个正方形)的矩阵加上s,求最终元素。

      这个题是差分方面的,最终一次询问,那么我们就可以搞,一开始没思路。

      后来想了想序列上差分是什么?就是代表一个点比前一个多多少,所以修改l,r就是l+s,(r+1)-s,这样最终一求前缀和就知道了原序列。

      在想一想如果是矩阵怎么做,把左上角+1,右上角-1,左下角-1,右下角+1,然后横向求前缀和就出来了向下两条横线,上边数值都是1,下边数值都是-1,然后从上往下求前缀和,整个矩阵就是1,

      就是卡线。

      然后这个三角是一个道理,把左上角+1,右下角-1,斜向求前缀和,然后在从上往下推,但此时下边还没堵口,需要现将右下角的-1推到左侧,推成一根线,然后从上往下退的时候就截住了。

      T2:DP很好想,就是状态数不确定,直接可以枚举每次怎么打,$f(i,s)$表示剩余i次,字符串为s的期望个数,

      $f(i,s)=max(f(i+1,s1)+w1,f(i+1,s2)+w2)$两个选择,这个记忆化搜索即可,

      因为状态数最多是$sum_limit_{i=1}^{n} min(2^{i},C_{n}^{i})$发现没多少,所以直接开hash表就行了。

      另:这个题可以把第一维省掉,但是要区别01101和1101的区别,参考yzh大神可以在所有状态前面加一个1<<30,这样就能区别了,然后就愉快的压掉第一维。

      T3:被虎卡掉了思路。。。那个题只有第一问,然后第二问打贪心我发现。。。。。他无法决策是否反转父亲边。

      所以这个题要打DP,dp[i][0/1]表示是否反转的最优解,都要存下来。

      转移很特殊。。。。。。先古着

  • 相关阅读:
    封装TensorFlow神经网络
    android对话框显示异常报错:You need to use a Theme.AppCompat theme (or descendant) with this activity.
    管道过滤器模式
    架构设计模式之管道——过滤器模式
    SQL SERVER 数据库邮件配置
    浅谈数据仓库的基本架构(转)
    Spark On YARN内存分配
    Tomcat 9.0安装配置
    Spark on Yarn遇到的几个问题
    yarn资源调度(网络搜集)
  • 原文地址:https://www.cnblogs.com/starsing/p/11604140.html
Copyright © 2011-2022 走看看