ICode9

精准搜索请尝试: 精确搜索
  • P8431 题解2022-08-26 03:01:47

    前言 题目传送门! 更好的阅读体验? 这题题解都写得特别复杂,蒟蒻看不懂。因此,我补一篇简单的贪心题解。 思路 题目等同于求最小的 \(p\) 使得 \(f(p)>n\),则 \((p-1)\) 就是答案。 若 \(f(p) > n\),首先要保证 \(p\) 的位数大于等于 \(n\) 的位数。根据贪心思想,我们让末尾不存在 \(0\)

  • 快速幂学习笔记2022-08-26 02:01:06

    前言 快速幂很有用哦!! 目前本文还没有例题,因为没有什么好题啊。 以后看一下能不能找一些题目。 什么是快速幂 幂,也就是次幂,可以理解为计算 \(x^y\)。 由于 \(x^y\) 会特别大,所以一般都是求 \(x^y \bmod p\)。 朴素的做法如下: #define LL long long LL slow_pow(int x, int y, int

  • 拼木板2022-08-25 23:35:11

    ''' 长木板长度 longer,短木板长度 shorter,一共有k长木板,可以拼成的木板长度区间是多少? ''' class Solution: def diving_board(self,shorter,longer,k): if k == 0: return [] ans = [] minl = k * shorter ans.append

  • KMP2022-08-25 12:32:10

    字符串匹配算法 时间复杂度O(n+m) #include<bits/stdc++.h> using namespace std; #define ll long long #define endl "\n" #define sf scanf #define pf printf #define fi first #define se second #define pb push_back #define pll pair<ll,ll> const int mod

  • [LuoGu8482]Number2022-08-25 12:00:38

    Description [LuoGu8482]Number Solution 可以当作一种经典案例 给定数字后乘积如何最大 Code #include<bits/stdc++.h> using namespace std; #define N 800010 struct rec { int nxt, ver, val; } t[N]; struct Rec { int u, v, w; } e[N]; int n, m, q, cnt, tot, u, v; int

  • Codeforces Round #772 (Div. 2)2022-08-25 07:32:03

    Codeforces Round #772 (Div. 2) VP A B C 3min 12min 52min +4 排名:rk3893 基准分:\(\color{ForestGreen}{1362}\) 从天选到天崩 A \(\color{Gray}{800}\) CF1635A Min Or Sum 简要分析可知,其实答案就是对于所有数取或运算和(具体懒得管) 时间复杂度:\(O(n)\) int

  • AT4740 题解2022-08-25 00:31:14

    题目传送门 小学生又双叒叕来写题解啦! 这是一个关于概率的模拟问题。 游戏分两步,我们先看第一步。 投色子,显然,投中一个 \([1, n]\) 的数,概率是 \(\dfrac{1}{n}\) 没错吧。 那么,我们重点思考第二步。 想获胜的唯一办法是:一直抛到正面,直到分数大于等于 \(k\) 了。 这就好办了,循环枚

  • Java小技巧:巧用函数方法实现二维数组遍历2022-08-24 23:32:32

    携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天,点击查看活动详情 对于数组遍历,基本上每个开发者都写过,遍历本身没什么好说的,但是当我们在遍历的过程中,有一些复杂的业务逻辑时,将会发现代码的层级会逐渐加深 如一个简单的case,将一个二维数组中的偶数找出来,保存

  • 【TPC附加赛YSTG】星坠比赛题解2022-08-24 22:03:15

    零、写在前面 比赛地址 本人比较菜,在这场接近提高组的模拟赛中获得了 \(30 + 100 + 30 + 50 = 210\) 的 烂 分 事实上只要把暴力打足成绩一般就不会差 但后来本人在 ZYF 神犇的指导下侥幸 AK 了 言归正传,接下来就是本场比赛的解题思路了 坐稳扶好 壹、碑文 这是本场比赛最难

  • 「AGC036F」Square Constraints 题解2022-08-24 19:31:28

    「AGC036F」Square Constraints 题解 题目大意 给定一个整数 $ n $,求有多少种 $ 0\ -\ 2n!-!1 $ 的排列 $ P $,使得对于每个 $ i $,都有 $ n^2 \le i^2 + P_i^2 \le 4n^2 $。输出答案对给定的 $ m $ 取余的结果。 输入 两个整数,$ n \(,\) m $。 输出 一个整数,表示答案。 思路 初始想

  • 无重复字符的最长子串2022-08-24 07:31:23

    题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 思路 用滑动窗口维护最长不重复子串,当有重复的字母时将窗口移动滑出重复字母 代码 class Solution { publi

  • [JSOI2007]文本生成器【AC自动机+DP】2022-08-23 01:31:00

    下定决心想要将这份爱意传达给你,与你在一起的每一刻总是那么值得珍藏, 你的存在左右着我的思绪,实在是不想错过这样的美好, 真的不和我在一起吗? 我的学术生涯,虽然有点奇妙,嗯,果然是开始了。导师是个副教授,叫我写\(vue\),嗯,也没问题,除了我一点也不会写\(vue\)之外。我从知网上下载他

  • 2022.8.22 颓废记录2022-08-23 00:30:45

    Preface 没有序言 Content [luogu P4059][Code+#1]找爸爸 题面太长难以概括,不写简要题目了QAQ。 首先发现,肯定没有两个对应位置都是空格的,否则可以去掉让答案更优。 因此,我们只需要考虑最后一位是不是空格,如果是,讨论它在小 A 还是小 B。 具体而言,令 \(dp(i,j,k)\) 表示两个字符

  • 木材加工2022-08-22 20:01:30

    我们依次要判断 a 中的每一个数并计算出能切出多少个 mid ,还要用一个变量 ans 储存他们,如果 ans 分的分数比 k 多或者正好等于,返回真。如果是小于 k ,返回假。 当 f 返回的是真的时候,我们就要试试还能不能把 mid 调大一点,就要l = mid; 如果返回的是假,我们就加的太大了,就要把 midmi

  • [2015年NOIP提高组] 跳石头2022-08-22 20:00:18

    先用二分法谋定一个数,temp_ans = (L + R) / 2; 我们假设这个temp_ans ,就是所有删除方案中,maxn个最小差值中的最大的那个,即答案:ans。而根据题目要求,我们需要拿掉M个石头。所以,我们要拿着这个temp_ans 去做个检测,检测是否可以在拿走 <= M 个石头的情况下结束检测。如果可以,则这个temp

  • P2440 木材加工2022-08-22 17:34:04

    P2440 木材加工 分析:根据题意,先对所有的木材长度进行排序方便二分查找,写一个查找函数,每个木材都除以当前的切割长度(mid),看能切出几段,如果切出的段数大于要求的段数,证明查找失败,在主程序内的mid(也就是当前的切割长度)就要将范围缩小一半,如果得出的段数少于给定段数,范围就反向缩小一

  • 离线树状数组例题2022-08-22 10:31:16

    https://codeforces.ml/contest/1712/problem/E2 题解: https://www.bilibili.com/video/BV1uB4y167ig?spm_id_from=333.1007.top_right_bar_window_view_later.content.click&vd_source=75ae018f8d1181302d7ea76b60c928f4 主要思路为:“”离线“”计算k取1-r时的树状数组:记录i取1-r

  • 2022.8.21 摆烂记录2022-08-22 00:30:20

    Preface 回归 Content [luogu P4310]绝世好题 给定序列 \(a_{1\sim n}\),求子序列 \(b\) 的最长长度 \(k\),使得 \(\forall i \in [2,k],b_i\mathsf{\&}b_{i-1}\gt 0\)。 \(1\le n\le 10^5,1\le a_i \le 10^9\)。 跟二进制有关,考虑位运算。 发现 \(b_i \mathsf{\&}b_{i-1}\gt 0

  • Gym-101630C Connections2022-08-21 22:01:42

    Connections 思维 真没看出来 由于给的是强连通图,直接保留从 \(1\) 开始深搜,保证 \(1\) 能访问到其他所有点的,然后反向建图,保证所有点能够到达 \(1\) #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <vector> using namespace std; const

  • 3. [2011年NOIP提高组] 铺地毯2022-08-21 20:32:10

    题目链接 本题精彩所在:数据范围 数据范围是x,y分别到达了100000,开二维数组无疑会空间爆炸 因此,我们可以通过他给予的坐标范围(围成一个四边形) 通过逆序判断坐标是否越界,来做出答案 1 #include<iostream> 2 using namespace std; 3 int n; 4 struct puditan 5 { 6 int x;

  • 2022杭电多校第十场1008 Minimum Diameter(树的直径的一些性质)2022-08-21 20:03:51

    解决本题分为两个部分:维护树的直径,合并多个树的直径 树的直径有如下性质: 1,从任一点出发,到达最远的点是直径的其中一端,从这一点出发可以到达最远的点是直径的另一端。或者说一棵树中距离某一点最远的点一定是直径的一端。 2,由1,两个树通过一条边连接形成的新的树的直径是两棵树直径4

  • 容斥原理2022-08-21 18:01:41

    https://www.acwing.com/problem/content/description/892/ 给定一个整数 \(n\) 和 \(m\) 个不同的质数 \(p_1, p_2, ..., p_m\)。 请你求出 1 ∼ \(n\) 中能被 \(p_1, p_2, ..., p_m\) 中的至少一个数整除的整数有多少个。 二进制枚举所有可能。 #include <bits/stdc++.h> using

  • CF1715D 2+ doors2022-08-21 04:00:08

    简要题意 对于一个数组 \(a\),给定 \(Q\) 个限制条件,每个条件给出 \(i,j,x\) 使得 \(a_i|a_j=x\)。 构造数组使其字典序最小。 Solution 以下 \(ans_i\) 表示最后我们构造出来的答案数组。 考虑一个最宽松的限制条件,我们有一个 \(b\) 数组,在最开始,\(b\) 在二进制意义下全是 \(1\)。

  • "蔚来杯"2022牛客暑期多校训练营92022-08-20 20:30:40

    比赛链接: https://ac.nowcoder.com/acm/contest/33194 A.Car Show 题意: 长度为 \(n\) 的一个序列 \(a\),问有多少个区间中 \([1, m]\) 的数都出现过。 思路: 双指针。 代码: #include <bits/stdc++.h> using namespace std; #define LL long long int main(){ ios::sync_with_stdio(

  • 线段树2022-08-20 18:05:03

    https://www.luogu.com.cn/problem/P3372 1 #include <iostream> 2 #include <cstdio> 3 using namespace std; 4 #define lson l,mid,rt<<1 5 #define rson mid+1,r,rt<<1|1 6 #define ll long long 7 const int mac=1e5+50; 8 ll tree[m

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有