zoukankan      html  css  js  c++  java
  • 十三 十四周总结

     1 //十三周总结
     2 //在看挑战程序设计的第二章和第三章的第一节
     3 //二分
     4 //1.从一个 有序的数组里面查找某一个值
     5 int pos=lower_bound(a,a+n,key)-a;//返回的pos是大于等于键值的第一个位置
     6 int pos=upper_bound(a,a+n,key)-a;//返回的pos是严格大于键值的第一 个位置
     7 //2.判断一个解是否可行
     8 //1)一般应该是先确定上界,下界,一个判断解是否可行的ok函数来找
     9 //2) 看书上写的,输出小数的问题,可以指定循环次数,循环100次可以达到10^-30的精度范围
    10 //3)最大化最小值
    11 //4)最大化平均值
    12 //这两种感觉框架都和判断一个解是否可行一样,关键还是写一个判断是否可行的ok函数来找
    13 
    14 //前天晚上的cf的c就是二分最小的时间,可是判断可行不懂判断
    15 //再上一次的cf也有一道二分,二分最小值,判断是否可行
    16 
    17 //然后还看了一点后面的尺取法,弹性碰撞,折半枚举
    18 //然后就是省赛,有点坑,但自己太弱才是最根本的原因吧--- 
    19 //D题写了,wa了,后来看题解,才知道,应该离线处理,
    20 //即先看哪些基站会被建设,把它们都建好
    21 //然后倒着处理查询
    22 Q 3  输出 2
    23 Q 2  输出 2(因为在这里建立了一个基站,答案就是它本身)
    24 C 2  删除2基站
    25 Q 3 输出 1 
    View Code
    //十四周总结
    //这一周前两天在考试,后几天在做挑战程序设计的第二章的题目
    
    深度优先搜索
    //POJ 1979: 给出红瓦黑瓦,人只能走红瓦,问最多能走多少片瓦,dfs
    //AOJ 0118:和例题判断有多少个水坑一样,只是这题有三种不同的坑
    //AOJ 0033:二进制枚举
    //POJ 3009:扔石头,相邻有石头的不能扔,一旦扔出去,就只能向那一个方向移动了(用一个while),碰到 石头就打碎它,求出最小步数
    
    广度优先搜索
    //AOJ 0558;做n次bfs,把每次的步数加起来
    //AOJ 0121;有一个4*2的方框,里面随机放着0--7的数,然后每次可以交换相邻的两个数的位置,最终希望排列为01234567,求最小步数
    //看题解看了好久----好捉急啊-------------
    //选0为参考的,然后通过0的漫游来找到所有的解,放在map里面,最后再map里面再找
    //http://www.hankcs.com/program/aoj-0121-seven-puzzle-challenge-programming-contest-2nd-edition-exercises-answers.html 
    
    穷竭搜索
    //POJ 2718 贪心,枚举排列,分奇偶
    //POJ 3187 枚举排列
    // POJ 3050 dfs 给定一个5*5的矩阵,每个格子上有一个数字,问走5步能够形成不同的6位数有多少个,dfs,把每次得到的六位数放到set里面
    //最后输出set的size就可以了
    
    基础的动态规划算法
    // POJ 3176  数塔
    // POJ 2229 分奇偶 递推
    //POJ 2385 分当前位置和下落的苹果的位置是否一致来做 
    // POJ 3616 看的这一篇题解,,http://www.zzkun.com/archives/227
    //POJ 3280 给出一个字符串,给出每个字母增加或者删除的代价,问为了使它 变成回文串的最小代价
    //还是看题解,这篇,http://blog.sina.com.cn/s/blog_6635898a0100qd3g.html
    
    优化递推式
    //POJ 1742 从三维优化到二维,再优化到一维,看题解都看晕了--------------------
    //POJ 3046 有A种蚂蚁,来自T 个家族, 来自同一个家族的是同一种蚂蚁,问从里面取n只,可以构成多少种 不同的集合
    //这篇--http://www.hankcs.com/program/cpp/poj-3046-ant-counting-problem-solution-challenge-programming-contest-2nd-edition.html
    //POJ 3181 完全背包方案数,,本来以为终于有一道会的题目,,,没想到要用高精度--------
    
    需稍加思考的题目
    //POJ 1065 某序列的最少上升子序列数就是该序列的最长下降子序列的长度
    //POJ 1631 LIS
    //另外3道还不会----
    
    优先队列
    //POJ 3614 贪心+优先队列,后来 搜题解发现有最大流做的
    //POJ 2010;还不懂那个维护前一半的最小花费的过程,,,还可以二分第k大的值来做
    
    并查集
    //POJ 2236 并和查
    //POJ 1703 和食物链一样
    //AOJ 2170 不用路径压缩,每次标记一个节点的时候,就把它的父节点改成自己
    
    最短路
    //AOJ 0189 floyd
    //POJ 2139 floyd
    //POJ 3259 Bellman_Ford判断负环
    //POJ 3268 正向反向建图,两次dijkstra
    //AOJ 2249 先用dijkstra求最短路径,再在这个基础上考虑最小的花费
    //AOJ 2200 floyd+dp
     
    
     
    //看了好多好多题解的说啊------------接下来的每一周都有考试了,然后接着做书上的题目,再好好复习,
    //加油-------------------------------------------------
    View Code
  • 相关阅读:
    VUE入门
    搭建内网穿透服务
    nacos集群配置安装
    jenkins入门
    Linux系统管理与自动化运维
    SVN
    JAR包启动
    服务器rm -rf 恢复案例 好文章
    docker入门到放弃
    CentOS7安装图形界面及报错处理
  • 原文地址:https://www.cnblogs.com/chdacm/p/4574633.html
Copyright © 2011-2022 走看看