ICode9

精准搜索请尝试: 精确搜索
  • 算法竞赛-前缀和&差分2022-03-21 15:03:28

    前缀和&差分 一维前缀和 问题描述: 输入一个长度为 n 的整数序列。 接下来再输入 m 个询问,每个询问输入一对 l,r。 对于每个询问,输出原序列中从第 l 个数到第 r 个数的和。 前缀和是一种重要的预处理,能大大降低查询的时间复杂度。可以简单理解为“数列的前n项的和” 用法: O(1)求

  • 深度优先搜索(DFS)与广度优先搜索(BFS)2022-03-19 17:01:15

           搜索算是一种暴力枚举,但与暴力枚举不同,暴力枚举是将所有可能的答案全部枚举一遍来求得最优解,而搜索是在枚举时跳过不可能出现答案的“死路”。在数据量小时暴力枚举可以作为通解,但数据量一大就很可能超时。如果自己判断出题目是要枚举且没有别的思路,那么可以使用搜索

  • csp 201912-2 回收站选址(遍历)2022-03-18 20:36:25

    目录题目描述暴力遍历分析代码时间复杂度参考文章 题目传送门 题目描述 暴力遍历 分析 代码 #include<iostream> #include<cstdio> #include<vector> using namespace std; struct POI { int x, y; int cnt; int score; }; vector<POI> h; int n; int res[6]; bool check1(i

  • LeetCode-149. 直线上最多的点数2022-03-06 11:03:43

    题目来源 149. 直线上最多的点数 题目详情 给你一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点。求最多有多少个点在同一条直线上。 示例 1: 输入: points = [[1,1],[2,2],[3,3]] 输出: 3 示例 2: 输入: points = [[1,1],[3,2],[5,3],[4,1],[2,3],[1,4]] 输出: 4

  • 阿波罗尼斯圆/球2022-03-02 17:33:53

    阿波罗尼斯圆/球 一直平面上有两个不同的点A(x1,y1),B(x2,y2)。有一个动点p(x,y),满足PA/PB=k。(k>0且k!=1) p点的运动轨迹是一个圆,且随着k增大,圆的半径变小,圆心不变 \((x-x1)^2+(y-y1)^2=k^2((x-x2)^2+(y-y2)^2)\) 化简为: \((k^2-1)(x^2+y^2)+(2x1-2k^2x2)x+(2y1-2k^2y2)y+k^2x2^2+k^

  • [NOIP2017] 棋盘 (BFS)2022-02-26 01:01:54

    题解    用a数组记录棋盘每格的颜色,用b数组记录到达棋盘每格所需的最小花费。从起点(1,1)开始BFS,判断颜色相同,颜色不相同和无色三种情况,对于无色方块不能按正常情况继续BFS,只能判断其周围是否有颜色方格为其续命。最终判断重点位置是否到达,并输出最小花费。 #include<stdio.h>

  • 差分与前缀和2022-02-16 12:03:25

        差分和前缀和其实是一对逆操作,这里将会对前缀和和差分是怎么实施的,如何理解,以及对应一维和二维数组的情况。       前缀和:换言之,就是前n项和,也就是高中学习数列时的Sn;        Sn = a1+a2+……an;        Sn+1 = a1+a2+……an+an+1 = Sn+an+1;     应用:如果要求从

  • 三体攻击(蓝桥杯省赛2018C/C++A组第七题) 前缀和与差分优化2022-02-09 22:06:34

    题目: 题目描述:略 输入输出样例 示例 输入 2 2 2 3 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 2 1 2 1 1 1 1 1 1 1 2 输出 2 思路: 前置知识:前缀和与差分上、前缀与差分下 三维前缀和公式: S(x,y,z) = b(x,y,z) + S(x-1,y,z) + S(x,y-1,z) - S(x-1,y-1,z) + S(x,y,z-1) - S(x-1,y,z

  • PTA-三角形判断2022-02-09 12:02:01

    给定平面上任意三个点的坐标(x1​,y1​)、(x2​,y2​)、(x3​,y3​),检验它们能否构成三角形。 输入格式: 输入在一行中顺序给出六个[−100,100]范围内的数字,即三个点的坐标x1​、y1​、x2​、y2​、x3​、y3​。 输出格式: 若这3个点不能构成三角形,则在一行中输出“Impossible”

  • 弦截法计算一元多次方程的根2022-02-07 17:01:31

    Description 下面程序的功能是采用弦截法求方程 x^3- 11.1x^2+38.8x-41.77=0 的根。其中函数root用来求区间(x1,x2)的实根。​ 请将程序补充完整。 #include<stdio.h> double root(double,double); int main() { double x1,x2,ans; scanf("%lf%lf",&x1,&x2); ans=root(x1,x2);

  • 专题二树形结构 E - Can you answer these queries V2022-02-06 23:32:10

    题目 You are given a sequence A[1], A[2], ..., A[N] . ( |A[i]| <= 10000 , 1 <= N <= 10000 ). A query is defined as follows: Query(x1,y1,x2,y2) = Max { A[i]+A[i+1]+...+A[j] ; x1 <= i <= y1 , x2 <= j <= y2 and x1 <= x2 , y1 <= y2 }

  • 洛谷P1652 判断连点连线穿过几个圆啊2022-02-05 20:32:17

    题目描述 给出 nn 个圆,保证任意两个圆都不相交。然后给出两个点 (x_1,y_1),(x_2,y_2)(x1​,y1​),(x2​,y2​),保证均不在某个圆上,要从 (x_1,y_1) \to (x_2,y_2)(x1​,y1​)→(x2​,y2​) 画条曲线,问这条曲线最少穿过多少次圆的边界? 输入格式 第一行为一个整数 nn,表示圆

  • 2021第十二届蓝桥杯省赛c++B组_直线2022-02-04 19:00:31

    // #include<bits/stdc++.h> using namespace std; struct point { double x,y; }p[25*25]; map< pair<double,double>,int >maps; int main() { int cnt=0,ans=20+21,i,j; double k,b; // double 类型 // 构造点 for( i=0;

  • 蓝桥杯12-直线2022-02-04 00:01:51

    思路: 第一点要想到y=kx+b 两条直线的k和b不相同那么这两条直线不相同 直接暴力4重循环 要把斜率不存在的直线特判出来,最后结果加上就好了 #include<iostream> #include<algorithm> #include <cmath> #include <map> using namespace std; struct L{ double k,b; int op

  • 算法训练 蜜蜂飞舞2022-02-02 23:31:13

    code #include<iostream> #include<algorithm> #include<complex> #include<cstring> using namespace std; const int N=10000; double a[N],b[N],c[N],d[N],e[N],f[N],t[N];//array t mean fly time int main(){ ios::sync_with_stdio(false); in

  • 洛谷P33972022-02-01 19:05:07

    本题考查的就是二维差分的应用 我们先来了解一下二维前缀和与二维差分: 假设我们有一个矩阵a[n][m], 再设它的前缀和为b[n][m], p[n][m] 当我们求前缀和时,我们需要的时(i,j)处矩阵的前缀和 那么我们的公式为   那么要求差分的话, 即求(i,j)处矩阵的差 我们的公式为  我们又已知:

  • UVA13091 No Ball 题解2022-01-31 18:01:18

    大意 因为题目没有翻译,样例有一点小的格式问题,所以给出了翻译(剪贴板) 分析 先记录运动员的脚朝右还是朝左,并记录分界线和运动员的脚的 \(y\) 坐标(即在第几列)。 分两种情况来判断就行了。 以下为 No Ball 的情况: 运动员的脚朝右,分界线的 \(y\) 坐标小于运动员的脚的 \(y\) 坐标

  • AcWing 796.子矩阵的和2022-01-30 22:02:38

    输入一个 nn 行 mm 列的整数矩阵,再输入 qq 个询问,每个询问包含四个整数 x1,y1,x2,y2x1,y1,x2,y2,表示一个子矩阵的左上角坐标和右下角坐标。 对于每个询问输出子矩阵中所有数的和。 输入格式 第一行包含三个整数 n,m,qn,m,q。 接下来 nn 行,每行包含 mm 个整数,表示整数矩

  • 用Python做一个游戏辅助脚本,完整编程思路分享2022-01-27 10:05:02

    说明 简述:本文将以4399小游戏《 宠物连连看经典版2 》作为测试案例,通过识别小图标,模拟鼠标点击,快速完成配对。对于有兴趣学习游戏脚本的同学有一定的帮助。 运行环境:Win10/Python3.5。 主要模块:win32gui(识别窗口、窗口置顶等操作)、PIL(屏幕截图)、numpy(创建矩阵)、operator(比较

  • 笔试强训之每日一题(六)2022-01-26 20:04:11

    笔试强训每日一题(六) 文章目录 笔试强训每日一题(六)不要二题目链接题目描述输入描述输出描述题目解析题目代码 字符串转成整数题目链接题目描述输入描述返回值描述题目解析题目代码 不要二 题目链接 题目描述 二货小易有一个W*H的网格盒子,网格的行编号为0~H-1,网格的

  • 高维前缀和与差分2022-01-24 23:31:32

    二维的容斥的规律: b[x1][y1]+=c; b[x2+1][y1]-=c; b[x1][y2+1]-=c; b[x2+1][y2+1]+=c; 一个[]变化则符号变化,两个又不变 同理三维 一个[]变化则符号变化,两个不变,三个又变

  • 图像的基本处理(五)ImageDraw 模块的使用2022-01-24 13:00:13

    ✨✨✨ 感谢优秀的你打开了小白的文章 “希望在看文章的你今天又进步了一点点,离美好生活更近一步!”

  • acwing-798. 差分矩阵2022-01-21 12:34:28

    输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1) 和 (x2,y2) 表示一个子矩阵的左上角坐标和右下角坐标。 每个操作都要将选中的子矩阵中的每个元素的值加上 c。 请你将进行完所有操作后的矩阵输出。 输入格式 第一行包含整数 n,m,q。

  • 双线性插值2022-01-20 07:00:44

    https://zhuanlan.zhihu.com/p/110754637   5.双线性插值已知Q11(x1,y1)、Q12(x1,y2)、Q21(x2,y1)、Q22(x2,y2),求其中点P(x,y)的值。 前面介绍过双线性插值是分别在两个方向计算了共3次单线性插值,如图所示,先在x方向求2次单线性插值,获得R1(x, y1)、R2(x, y2)两个临时点,再在y方向

  • ccf:201409-02 画图 (满分代码 + 解题思路 + 技巧总结)2022-01-19 20:33:34

    题目描述 解题思路 由于数据范围很小,所以可以直接暴力求解 相当于在一个大方格纸上标记处所有被涂色了的点 最后统计所有涂色了的点 代码实现 #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 110; int n; bool m[N

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

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

ICode9版权所有