这场没考什么算法,比较水,难度也不是很高。比赛链接
硬要说的话E有个 前缀和 加 二分,F是数学BFS,G是个构造 A. Turtle Puzzle: Rearrange and Negate
题意:
给你一个由 n n n 个整数组成的数组 a a a 。您必须对…
题目链接 Leetcode.4 寻找两个正序数组的中位数 hard 题目描述
给定两个大小分别为 m m m 和 n n n 的正序(从小到大)数组 n u m s 1 nums1 nums1 和 n u m s 2 nums2 nums2。请你找出并返回这两个正序数组的 中位数 。
算法的时间复杂度应该为 O…
传送门:SDUT 2610题目大意:
给你一个数组 P 和 m 组询问,让你求在区间 [ l , r ] 中满足 A< Pi <B 的数有多少个。前置技能:
1.主席树原理及应用。
2.划分树原理及应用。思路:
主席树和划分树都可以解决区间第 K…
【
给你一个 n x n 矩阵 matrix ,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。 请注意,它是 排序后 的第 k 小元素,而不是第 k 个 不同 的元素。
你必须找到一个内存复杂度优于 O(n2) 的解决方案。 示例 1&#x…
其实就是分数规划,但不完全是。
对于求 ∑ p i l i ∑ l i \Large\frac{\sum p_il_i}{\sum l_i} ∑li∑pili 在限定条件下的最大值,此类问题可以考虑二分答案并移项。 ∑ p i l i ∑ l i ≥ k \Large\frac{\sum p_il_i}{\sum l_i}\ge k ∑li…
题目链接 Leetcode.275 H 指数 II mid 题目描述
给你一个整数数组 c i t a t i o n s citations citations ,其中 c i t a t i o n s [ i ] citations[i] citations[i] 表示研究者的第 i i i 篇论文被引用的次数, c i t a t i o n s citations citat…
题目链接 Leetcode.274 H 指数 mid 题目描述
给你一个整数数组 c i t a t i o n s citations citations ,其中 c i t a t i o n s [ i ] citations[i] citations[i] 表示研究者的第 i i i 篇论文被引用的次数。计算并返回该研究者的 h h h 指数。
根据维基百科…
Make It Good - 洛谷
Problem - 1385C - Codeforces 思路一: 二分答案,每次check从mid1开始,判断能否形成要求的序列。
#include<bits/stdc.h>
using namespace std;
#define int long long
const int N2e55;
int t,n,a[N];
bool che…
题面 题解 代码
#include<bits/stdc.h>using namespace std;
const int N 5e4 10;
const int INF 1e9;int n, t;
int w[N];
int q[N];
int f[N];bool check(int limit) {int hh 0, tt -1;q[tt] 0;for (int i 1; i < n; i) {while (hh < tt && q[hh…
文章目录 前言Part 1:排序一、快速排序二、归并排序 Part 2:二分一、二分 - 查找左边界二、二分 - 查找右边界 Part 3:高精度一、高精度加法二、高精度减法三、高精度乘法四、高精度除法 Part 4:离散化一、区间和 前言 由于本篇博…
题目链接 Leetcode.2594 修车的最少时间 rating : 1915 题目描述
给你一个整数数组 r a n k s ranks ranks ,表示一些机械工的 能力值 。 r a n k s _ i ranks\_i ranks_i 是第 i i i 位机械工的能力值。能力值为 r r r 的机械工可以在 r ∗ n 2 r * n^2 r∗n2…
题目 在郊区有 N 座通信基站,P 条 双向 电缆,第 i 条电缆连接基站 Ai 和 Bi。 特别地,1 号基站是通信公司的总站,N 号基站位于一座农场中。 现在,农场主希望对通信线路进行升级,其中升级第 i 条电缆需要花费…
Description
给出正整数n和k,计算j(n, k)k mod 1 k mod 2 k mod 3 … k mod n的值,其中k mod i表示k除以i的余数。例如j(5, 3)3 mod 1 3 mod 2 3 mod 3 3 mod 4 3 mod 5010337
Input
输入仅一行,包含两个整数n, k。
Output
输出…
分析: 记录所有区间和给定的每一次的询问,二分询问的最小满足条件,可以通过前缀和来计算区间内有几个1。
代码:
#include <bits/stdc.h>#define x first
#define y secondusing namespace std;typedef long long ll;
type…
题目链接 Leetcode.1201 丑数 III Rating : 2039 题目描述
给你四个整数:n 、a 、b 、c,请你设计一个算法来找出第 n 个丑数。
丑数是可以被 a 或 b 或 c 整除的 正整数 。
示例 1: 输入:n 3, a 2, b 3, c 5 输…
二分 数的范围 一个是找左边界 一个找又边界 l mid情况下更新时 mid l r 1 >> 1的原因是向下取整 如果不加一 mid l,更新 l mid陷入死循环
#include<iostream>
#include <algorithm>
#include <vector>
using namespace std;
const int maxn10…
题目
有 N N N 个元素,编号 1 , 2.. N 1,2..N 1,2..N,每一对元素之间的大小关系是确定的,关系具有反对称性,但不具有传递性。
注意:不存在两个元素大小相等的情况。
也就是说,元素的大小关系是 N N N…
Announcement
Programmed on 2024/3/2Written on 2024/3/2
题目来源
洛谷 P1415(简单版)洛谷 P2282(进阶版)
Description
给定一个仅由数字构成的字符串 s s s,用 , 将其划分为若干个正整数,使其严格…
Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 512000/512000 K (Java/Others) Total Submission(s): 6517 Accepted Submission(s): 1423 Problem Description 小Q非常喜欢数学,但是他的口算能力非常弱。因此他找到了小T,给了小T一个长…
562. 壁画 - AcWing题库 Tint(input()) j1 while(j<T): N int(input()) ainput() s [0]*(N1) # 求前戳和 for i in range(1, N 1): s[i] int(a[i-1]) s[i - 1] # 枚举 # 区间 max_ float(-inf) k (N 2 - 1) // 2 for i in …
二分查找
题目描述
输入 n n n 个不超过 1 0 9 10^9 109 的单调不减的(就是后面的数字不小于前面的数字)非负整数 a 1 , a 2 , … , a n a_1,a_2,\dots,a_{n} a1,a2,…,an,然后进行 m m m 次询问。对于每次询问,给出一…
首先肯定先枚举数字
然后考虑二分答案
每个字符串向它合法的位置连边
然后易发现每个点出度最多为 n n n,不然没意义
所以最多 O ( n 2 ) O(n^2) O(n2) 条边
然后跑网络流,看能不能流完,也就是能不能匹配成功即可
#define M 200010
/…
题目链接 Leetcode.33 搜索旋转排序数组 mid 题目描述
整数数组 n u m s nums nums 按升序排列,数组中的值 互不相同 。
在传递给函数之前, n u m s nums nums 在预先未知的某个下标 k ( 0 ≤ k < n u m s . l e n g t h )…
【LetMeFly】2048.下一个更大的数值平衡数
力扣题目链接:https://leetcode.cn/problems/next-greater-numerically-balanced-number/
如果整数 x 满足:对于每个数位 d ,这个数位 恰好 在 x 中出现 d 次。那么整数 x 就是一个 数值平衡数 。…
常用的算法二分模板
1. 在数组a[]中找大于等于x的第一个数的下标
//int ans lower_bound(a, a n, x) - a
//相当于下方
int l 0, r n - 1;
while(l < r) {int mid l r >> 1;if(a[mid] > x) r mid;else l mid 1;
}
cout << r;2. 在数组a[]中找大于…
#include<iostream>
using namespace std;const int N 1e5 10;
int h[N] {0},w[N] {0};
int n,k;bool check(int mid){int ans 0; // ans 统计蛋糕以mid为边长 可以划分的数量for(int i 0;i < n;i){ans (h[i] / mid) * (w[i] / mid);if(ans >…
A 计算 K 置位下标对应元素的和 模拟 class Solution {
public:int pop_cnt(int x) {//求x的二进制表示中的1的位数int res 0;for (; x; x >> 1)if (x & 1)res;return res;}int sumIndicesWithKSetBits(vector<int> &nums, int k) {int res 0;for (int i…
对于给定的一个长度为 N N N 的正整数数列 A 1 − N A_{1−N} A1−N,现要将其分成 M ( M ≤ N ) M(M≤N) M(M≤N) 段,并要求每段连续,且每段和的最大值最小。
关于最大值最小:
例如一数列 4 , 2 , 4 , 5 , 1 4,2,4,5,1 4,…
也许更好的阅读体验 D e s c r i p t i o n \mathcal{Description} Description n n n个物品有长和宽, m m m个盒子也有长和宽,一个盒子最多可以装一个物品,问 n n n个物品能否都放进盒子,物品和盒子不能旋转 S o l u t i o n \…
分析: 首先找到边的指向很容易,但是暴力是o(n2),超时,可以将给定的式子变形,au - av > bu - bv即au - bu > av - bv,可以将两个数组转变为一个数组中的任意两个值之间的关系,因…