0495. Teemo Attacking (M)

Teemo Attacking (M) 题目 In LOL world, there is a hero called Teemo and his attacking can make his enemy Ashe be in poisoned condition. Now, given the T ...

链表中倒数第 k 个结点

输入一个链表,输出该链表中倒数第 k 个结点 解法一 使用一个 ArrayList 保存链表的所有结点,然后再直接取出目标结点 import java.util.List; import java.util.ArrayList; public class Solution { private Lis ...

调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变 解法一 第一次循环遍历数组,找到第一个奇数 遍历奇数之前的数组,找到第一个偶数,并交换奇数和偶数 public class Solu ...

数值的整数次方

给定一个 double 类型的浮点数 base 和 int 类型的整数 exponent。求 base 的 exponent 次方。保证 base 和 exponent 不同时为 0 本题需要考虑三种情况: exponent == 0 exponent > 0 exponent < 0 解法一 暴力 ...

D. Number of Parallelograms 解析(幾何)

Codeforce 660 D. Number of Parallelograms 解析(幾何) 今天我們來看看CF660D 題目連結 題目 給你一些點,求有多少個平行四邊形。 前言 @copyright petjelinux 版權所有 觀看更多正版原始文章請至petjelinux的blog 想法 ...

常见算法技巧之——双指针思想

常见算法技巧之——双指针思想 欢迎访问我的个人主页 ​ 双指针思想是指设置两个指针解决一些算法问题。一般用的比较多的就是去解决数组、链表类的问题,还有很耳熟能详的二分查找问题。本文将根据自己平时做题的总结以及在网上看到的其他大佬的总结讲解来讨论一下双指针的使用技巧。本文会根据我平时做题实时更新。 快 ...

B. Kay and Snowflake 解析(思維、DFS、DP、重心)

Codeforce 685 B. Kay and Snowflake 解析(思維、DFS、DP、重心) 今天我們來看看CF685B 題目連結 題目 給你一棵樹,要求你求出每棵子樹的重心。 前言 完全不知道我怎麼想到的 @copyright petjelinux 版權所有 觀看更多正版原始文章請至pe ...

二进制中 1 的个数

输入一个整数,输出该数 32 位二进制表示中 1 的个数。其中负数用补码表示 要解决这道题,必须清楚以下几个知识点: 对于位运算符 &,,当两个位同时为 1 时结果为 1,否则为 0 >> 代表有符号右移,>>> 代表无符号右移,<< 代表无符号左移 错误的解法 从 n 的二进制形式的最右边开始判断 ...

0179. Largest Number (M)

Largest Number (M) 题目 Given a list of non negative integers, arrange them such that they form the largest number. Example 1: Input: [10,2] Output: "21 ...

单调队列优化O(N)建BST P1377 [TJOI2011]树的序

洛谷 P1377 [TJOI2011]树的序 (单调队列优化建BST 链接 题意分析 本题思路很简单,根据题意,我们利用所给的Bst生成序将Bst建立起来,然后输出该BST的先序遍历即可; 但,如果我们不加优化,建BST的时间复杂度在最劣情况下将达到O(n^2),显然,在1e5的数据下是过不去的,所 ...

矩形覆盖

我们可以用 2*1 的小矩形横着或者竖着去覆盖更大的矩形。请问用 n 个 2*1 的小矩形无重叠地覆盖一个 2*n 的大矩形,总共有多少种方法? 首先来理解一下题意,比如 n = 3 时,2*3 的矩形块有三种覆盖方法: 这道题目依旧是斐波那契数列,2*n 的大矩形,和 n 个 2*1 的小矩形,其 ...

跳台阶

一只青蛙一次可以跳上一级台阶,也可以跳上两级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法(先后次序不同算不同的结果) 青蛙每次只有两种跳法:一阶或二阶,假定第一次跳的是一阶,那么剩下的是 n - 1 个台阶,总的跳法是 f(n - 1) 假定第一次跳的是二阶,那么剩下的是 n - 2 个台阶,跳 ...

斐波那契数列

大家都知道斐波那契数列,现在要求输入一个整数 n,请你输出斐波那契数列的第 n 项(从 0 开始,第 0 项为 0,第 1 项是 1) 首先给出斐波那契数列的定义 F(1) = 1,F(2) = 1, F(n) = F(n - 1) + F(n - 2)(n ≥ 3,n ∈ N*) 解法一:递归解法 ...

python协程(yield、asyncio标准库、gevent第三方)、异步的实现

引言 同步:不同程序单元为了完成某个任务,在执行过程中需靠某种通信方式以协调一致,称这些程序单元是同步执行的。 例如购物系统中更新商品库存,需要用“行锁”作为通信信号,让不同的更新请求强制排队顺序执行,那更新库存的操作是同步的。 简言之,同步意味着有序。 阻塞:程序未得到所需计算资源时被挂起的状态。 ...

C2. Pokémon Army (hard version) 解析(思維)

Codeforce 1420 C2. Pokémon Army (hard version) 解析(思維) 今天我們來看看CF1420C2 題目連結 題目 略,請直接看原題。 前言 根本想不到這個等價的想法 @copyright petjelinux 版權所有 觀看更多正版原始文章請至petjeli ...

[数据结构] 单链表

✨✨ 最近在重温数据结构的知识, 这篇blog主要写数据结构中的线性表, 记录自己用python实现这些数据结构以及对应的基本操作方法,方便今后回顾。 一 . 线性表定义: 零个或多个数据元素的有限序列; 二. 线性表的存储结构: 顺序存储 -- eg.数组List 、 元组Tupple 线性表的顺 ...

数论-同余式

同余式 定义:a≡b (mod m) =>a和b关于模m同余 数学式子表示:∃ q,q1,r,a=m*q+r,b=m*q1+r (0≤r≤m-1) 性质 ①a≡a (mod m) ②若a≡b (mod m) ,则b≡a (mod m)(对称性) ③若a≡b (mod m) 且b≡c (mod m), ...

<1···789···82>