枚举:
1.拍照
解题思路:枚举a1,求出每个ai,然后检查这个答案是否合法。
2.牛为什么过马路
解题思路:对于一对相同的字母,枚举中间是否存在没有记录的单个字符。
3.牛的基因组学
解题思路:暴力枚举每一列,查看是否有可以区分两种牛的基因
4.贝茜的报复
解题思路:偶数情况 = 总可能数 - 全是奇数的情况,枚举遍历即可。
5.圆形牛棚
解题思路:枚举每个房门的最小步数即可。
6.农田缩减
解题思路:枚举每个点,判断去掉这个点之后四条边会不会改变。
7.枚举
解题思路:每个木板单词取最大,总体单词求和。
8.奶牛棒球
解题思路:推导一下公式,然后进行枚举。
9.笨拙的手指
解题思路:枚举二进制的每一位数,假设是它错了,将其更改,然后转化位三进制,判断答案是否正确。

贪心:
1.疯狂的科学家
解题思路:可以利用类似双指针的思想去找到a,b字符串连续的不同的地方。

bfs:
1.社交距离II
解题思路:首先求出感染的最小半径,也就是没有感染的牛到感染的牛的最小距离,然后按照位置顺序利用bfs遍历每一头感染的牛,看看它能感染哪些牛,每次遇到新的感染的牛,ans++
2.愤怒的奶牛
解题思路:枚举每个有草的点,然后进行bfs判断最多能烧几个,结果取最大值。
3.愤怒的奶牛
解题思路:先用dfs跑一遍把某一片X标记,然后从标记的点中用bfs找到去未标记点的最短路径。

dfs:
1.不同的路径数
解题思路:用unmap判重,然后用dfs遍历每一个位置,记得回溯。最后输出map的大小。
2.阶乘的和
解题思路:观察到10!>1e6,所有只要枚举10个阶乘的和有哪些情况,一共是210种情况,最后需要注意输入是负数的时候停止,不是-1.

前缀和:
1.菊花链
解题思路:可以预先处理一下前i张花的花瓣数量,这样后面可以快速求出花瓣数量的和,然后枚举每一个区间,查看是否有满足要求的照片。
2.公平摄影
解题思路:对于这种只包含两类的题目,可以令某一类为-1,另外一类为1,然后求前缀和,列举值相同的点,求位置差的最大值。不过这题需要注意照片中可以含义同一种奶牛,然后因为值比较大,需要用到unordered_map来求解。其次这里序号和坐标也需要有映射关系。
3.乘积数量
解题思路:某一个区间中负数的数量为奇数的时候乘积就为负,s0记录为偶数的个数,s1记录数量为奇数的个数。乘积为负数的数量为s0s1,正数的个数为s0(s0-1)/2+s1*(s1-1)/2;

差分:
1.桶列表
解题思路:这里可以抽象成为一个区间对答案的贡献度,然后遍历求这个区间的最大值就可以了。
2.救生员
解题思路:枚举每一个解雇的救生员,利用差分数组计算最长覆盖时间。
3.懒惰的牛
解题思路:每块位置的草地都对附近k个距离的点有贡献,因此可以采用差分,不过这里因为x比较大,利用map来进行计算,防止超时。
4.粉刷栅栏
解题思路:这个题依旧是用差分的思想,用map来离散化,最后计算sum>=2的区域。不过这里注意是b[r]-=1,不是b[r+1]-=1,可能如果是按照某一段这样的结果,就是b[r],按照某点就是b[r+1]。
5.金发姑娘和N头牛
解题思路:仍然看成是某一个区间的贡献,低于l的区间贡献+x,[l,r]贡献+y,大于r的贡献+z,类似于差分那样去写。
6.干草堆
解题思路:典型的差分例题,照着模板写一下然后求前缀进行判断即可。
7.改变数组元素
解题思路:看到对区间同样的操作,用差分做即可,每次操作,把[max(i-x+1,1),i]这个区间+1,然后求和如果>=1,那么就输出1,否则输出0.

构造:
1.大型植被恢复
解题思路:可以把输入的m个点对看成是一条边,每条边相连的点的草种数量不同,要想字典序小,可以从1号草地开始遍历,选择满足条件的最小草种。满足条件为与它相连的点而且序号比它小,那么它就不能使用这个点使用的草种。
2.牛的洗牌
解题思路:按照规则进行逆推,mp[i] = tmp[a[i]]就行。

floyd:
1.牛奶工厂
解题思路:像这种要求借助中间点可到达的地方的题都可以用foyld先跑一遍,然后按列从小到达进行遍历,求最小得列。

字符串哈希:
1.我在哪
解题思路:利用字符串哈希,从1开始枚举每个长度,找到每个长度为len的字串都只出现过一次的答案。

思维
1.蹄球
解题思路:可以把每个点能够投向的点相连,然后计算每个点的入度,找到入度为0,ans+1,或者入度为1的环,ans+0.5。
2.奶牛慢跑
解题思路:本题简化题意就是如果在后面的牛的速度比在前面位置牛的速度小,那么这些牛最后就会跑成一堆,用栈来进行处理,一旦发现栈顶的速度大于当前牛的速度,那就出栈。
3.奶牛过马路
解题思路:本题关键在于安全的奶牛大于前面奶牛过马路的位置的最大值同时小于后面奶牛的最小值,用两个数组进行维护。
4.闪烁
解题思路:本题的关键在于找到进入循环的那个状态,N = 16,一共只有64*1024个状态,那完全可以进行枚举这么多状态,再来判断b是在循环内还是进入循环之前。
5.三值字符串
解题思路:利用map存储每个字符最后出现的位置,如果3个字符全都出现了,那么就可以更新最小值了。

滑动窗口
1.品种临近
解题思路:对于固定的一个区间,可以采用滑动窗口进行判断,一般维护一个s数组,每次r向右滑动就s[a[r]]++,s[a[l]]–,然后进行判断。

双端队列广搜
1.拖拉机
解题思路:dist[i][j]表示这个点到拖拉机的最短距离,每个点只出队一次,然后有干草的点权值为1,插入双端队列尾部,反之权值为0,插入头部。

模拟
1.星期几
解题思路:先打表再模拟

递归
1.2的幂次方
解题思路:如果当前的x为1 2 3 4,直接输出对应的形式,否则的话找到最大的2t<=x,然后把t再进行递归,如果x-2t > 0,那么要把剩余部分继续递归。注意括号的生成和加号的生成。

双指针
1.K优字符串
解题思路:利用双指针从两端模拟即可。

高精度
1.二进制
解题思路:虽然本题算法标签为位运算,但仍可按照高精度的数组运算来进行计算也可以。

迪杰斯特拉
1.最短路径
解题思路:对于此类求解其他点到某一个点的距离时候,可以反向建图,然后用堆优化的迪杰斯特拉算法进行求解即可
2.最短距离
解题思路:对于此类问题,根据实际情况,可以建立一个超级源点或者超级汇点,然后跑一遍最短路,即可得到想要答案。不过注意超级点和普通点是单向的。

spfa
1.香甜的奶油
解题思路:枚举每一个牧场,用spfa或者堆优化迪杰斯特拉跑一遍就行了。

题目汇总(ACWing)相关推荐

  1. BaiDu往年面试题目汇总☆WM☆

    BaiDu往年面试题目汇总☆WM☆祝自己明天能取得一个好的面试成绩 题目来源:http://www.cnblogs.com/cutepig/archive/2007/09/14/893552.html ...

  2. 面试准备系列01----面试中的链表题目汇总

                                               面试准备系列01----面试中的链表题目汇总 九月份立即就要校招了,感觉时间非常是捉急啊~~~~白天要实习,就仅仅 ...

  3. 【附答案】Java面试2019常考题目汇总(一)

    转载自  [附答案]Java面试2019常考题目汇总(一) 一.JAVA基础篇-概念 1.简述你所知道的Linux: Linux起源于1991年,1995年流行起来的免费操作系统,目前, Linux是 ...

  4. 剑指offer题目汇总

    剑指pffer题目汇总 一.线性表 1.数组 思路总结:https://blog.csdn.net/Lollipop66/article/details/80816166 面试题3:数组中重复的数字 ...

  5. 单片机模拟计算机课设,单片机课程设计题目汇总(全)

    单片机原理与接口技术课程设计题目汇总,说明:为便于同学提前探讨开发思路,要求:课程设计考核内容包括:源程序,一.基于单片机的电子时钟设计,设计内容:1.用LCD液晶作为显示设备(30分),2.可以分别 ...

  6. LeetCode刷题——剑指offer深度优先搜索题目汇总

    剑指offer深度优先搜索题目汇总 剑指 Offer 12. 矩阵中的路径 剑指 Offer 34. 二叉树中和为某一值的路径 剑指 Offer 36. 二叉搜索树与双向链表 剑指 Offer 54. ...

  7. [Leetcode][分治法]相关题目汇总/分析/总结

    题目汇总 以下链接均为我博客内对应博文,有解题思路和代码,不定时更新补充. 目前范围:Leetcode前150题 分治法相关题目 两个排序数组的中位数 请找出这两个有序数组的中位数.要求算法的时间复杂 ...

  8. 浙商银行计算机专业笔试考什么,浙商银行笔试题目汇总

    浙商银行笔试题目有哪些?以下就是小编整理的浙商银行笔试题目汇总,一起来看看吧! 浙商银行笔试真题(一) 浙商银行笔试本人选考的是综合类题!看到浙商银行笔试题目时,就感觉回到两年前考研的<管理学& ...

  9. 初中级前端面试题目汇总和答案解析

    笔者虽然曾今也面试过一些前端求职者,但是对于前端的笔试和面试,我觉得并不能体现一个人的真实能力,所以建议大家多修炼前端真正的技术.对于前端面试题,由于之前承诺过会出一期,所以笔者大致总结一下曾今面试的 ...

最新文章

  1. 闰年的判断方法_C语言100题 判断这一天是一年中的第几天 壁纸 火影
  2. 一张表看尽CV和NLP的经典+前沿论文,还教你阅读顶会论文,构建深度学习知识框架...
  3. hashlib 加密
  4. Xshell显示中文,但是不能输入中文
  5. linux 全双工 wifi热点,Linux中的同时套接字读/写(“全双工”)(特别是aio)
  6. PHP 程序员的技术成长规划
  7. 基于Qt的海康威视SDK二次开发-摄像头登陆、预览和抓图
  8. 案例|工业物联网解决方案·光伏电站
  9. 铁路订票系统12306网站的业务和技术优化概述
  10. 【Python 多进制转换】——数值多进制转换bin、oct、int、hex(2进制、4进制、8进制、10进制、16进制、32进制)
  11. 学习arduino esp32相关例程(1)深度睡眠与唤醒
  12. 王爽老师汇编第三版课程设计 一
  13. UserWarning: Glyph 20809 (\N{CJK UNIFIED IDEOGRAPH-5149}) missing from current font解决方法
  14. mySQL 2502 2503错误
  15. 华为任正非:管理的灰度
  16. 通信工程交换传输实习报告
  17. 网站多次切换服务器ip,站群多ip服务器怎么切换ip?
  18. Android day_06 (ListView的入门使用 了解数据适配Adapter以及打气筒的使用)
  19. 2022-2-11 计算机组成原理 —— 异常和中断
  20. optimize非线性求解

热门文章

  1. 生鲜配送系统源码功能介绍
  2. MINIGUI3.2 设置按钮前景色
  3. JAVA学习日志 关于周易数字卦的一个算法
  4. R语言独立样本的 t 检验
  5. 迁移学习癌医学影像检测
  6. 小学生获奖作品html,小学生优秀绘画作品图片展示
  7. facebook获取好友头像
  8. 【愚公系列】2022年04月 密码学攻击-RSA之共模和模不互素
  9. xtraReport的简易使用方法
  10. setImageBitmap 图片太大部分机型不显示