摘要:有一个结论:在线段(长为L)上任取两点,截取的线段期望长度是L/3 知道这个结论后这题就可以做了 但还是要分类大讨论+公式化简,用前缀和做 #include <bits/stdc++.h>#define _for(i,a,b) for(int i=a;i<b;++i)#define _rep(i,a
阅读全文
摘要:#include<bits/stdc++.h> using namespace std; #define ll long long struct Edge{ ll to,nxt,w,c; }e[10005]; int n,m,k1,k2,tot,head[1005],S,T; void init()
阅读全文
摘要:直接判断分成x组能否满足,从大到小平均分是最合理的方案 #include<bits/stdc++.h> using namespace std; #define N 200006 int suf[N],n,k,m[N],c[N]; vector<int>v[N]; long long t[N]; i
阅读全文
摘要:感觉dp状态还是挺不容易想到的 /* dp[i][j]表示后i个数用j根火柴棒是否可行 mp[i][j]表示第i个字符变成j需要多少根火柴棒求答案时从高位到低位贪心 */ #include<bits/stdc++.h> using namespace std; #define N 4005 int
阅读全文
摘要:/* 设每行都有一个,每列上每多一个攻击对就会+1, 列上多了k个,那么只有n-k列上有棋子C(n,n-k) 问题变成将n个棋子放在n-k列上,且每列必须有一个,每行必须有且仅有一个的方案数 容斥: ans=将n个棋子随便放在某一列 pow(n-k,n) -有一个空行 pow(n-k-1,n)C(n
阅读全文
摘要:/* 先求出多边形的质心 将多边形分割成三角形 OViVi+1, 求每个三角形的质心((x1+x2+x3)/3,(y1+y2+y3)/3),然后再有向面积加权 然后求圆和多边形的交点:套模板即可 */ #include<bits/stdc++.h> using namespace std; type
阅读全文
摘要:/* 两个重要的结论: 1.将每条边强行移到圆上,如果多边形所有边的圆心角之和=2pi,那么圆心在多边形中;>2pi,那么圆半径太小;<2pi,圆半径太大 2.不管按什么顺序摆放边,都不影响多边形的对应其外接圆(如果有)的圆心角之和 给定多边形的各边边长,要求构造出一个多边形,使其所有点在外切圆上,
阅读全文
摘要:/* 给定 base = p/q,找到一个数组a[],每个元素的范围是[0-9A-Za-z],就是[0,61] 使 n = a[k]*base^k + a[k-1]*base^(k-1) + ... + a[1]*base + a[0] 本质上是进制转换:将十进制数n转换成base进制 因为a[]数
阅读全文
摘要:/* 首先推出一个结论:外圈有n个点的图答案必定是 n*f(n)的形式,因为每转过一个角度都会计数一次 然后来考虑f(n):显然所有可行的解中只能有一个圈,大小为k的圈必定只会有一种连接的方法 所以只要考虑剩下n-k个圈外点的连接种数即可 设i个圈外点的连接方案数是g(i),同时我们以顺时针把这些圈
阅读全文
摘要:两种思路 找环模拟: /* 每个格子都有看成是带一条出边的点(正反图各建一个) 那么形成的图像很多不相交的环,环上带着链 所以可以把环单独拉出来算,每个独立的环+链最多放的数量就是环的size 然后再考虑黑色格子最多 对于每个独立的环+链,给每个结点编号,定一个环上点为0,其后继是1,前驱是size
阅读全文
摘要:/* 用dp[i][j]来表示a[i]将要匹配b[j]时的代价 如果a[i]没有对应的b[x] 如果p[i]<=0,直接将这位丢掉,dp[i][j]=dp[i-1][j]+p[i] 如果p[i]>0, 那么这位能不丢就不丢, 对于所有的b[j]>a[i],a[i]不丢掉是不会影响第j位的匹配的,dp
阅读全文
摘要:/* 题意:给定D,用D的因子构造一张图 因子u,v之间有边:u/v是质数,边权是 u的因子数-v的因子数, 路径长度=边权之和 给定 u,v,求u,v之间最短路径的条数 怎么确定最短路径 u->v,每步等价于u乘以一个质数或除以一个质因子,这条最短路肯定经过gcd(u,v) 那么原问题转化为 u-
阅读全文
摘要:/* 1 2 1 3 1 4 1 5 2 3 2 4 2 5 3 4 3 5 4 5 1 */ #include<bits/stdc++.h> using namespace std; #define ll long long #define N 200005 long long n,l,r,L[N
阅读全文
摘要:/* ÉèxÊÇa->b,b->cµÄ½»µã¿ÉÒÔ½«Â·¾¶a->b->cת»¯Îªa->x->b->x->c ¿É¼ûx-bÕâ¶Î·¾¶ÉÏ
阅读全文
摘要:/* 先定一个结尾:只出现一次的都可以当成结尾,然后把结尾所在的集合影响删掉,继续往前找 找完一整个序列后还要再和给定的序列比较一下看是不是满足要求 注意前两个数要特判,第一个数肯定比第二个数出现次数少 */ #include<bits/stdc++.h> using namespace std;
阅读全文
摘要:拦截器的概述 1. SpringMVC框架中的拦截器用于对处理器进行预处理和后处理的技术。 2. 可以定义拦截器链,连接器链就是将拦截器按着一定的顺序结成一条链, 在访问被拦截的方法时,拦截器链中的拦截器会按着定义的顺序执行。 3. 拦截器和过滤器的功能比较类似,区别 1. 过滤器是Servlet规
阅读全文
摘要:/* 统计1-200的前缀和,然后枚举i为第一段的右端点,可以直接推出第三段的左端点,然后在中间那一块找最大值就行 */ #include<bits/stdc++.h> using namespace std; #define N 200005 int n,a[N],sum[205][N]; vec
阅读全文
摘要:感觉还是题做少了,比赛的时候感觉就差那么一点,结果是没有往区间dp这方面去想 /* 首先有个挺重要的性质:s[1..k]的字符一定会挨在一块 再将T扩充成和S长度一样,后面补上通配符 区间dp:dp[l][r]表示T的[l..r]区间被凑出来的方案数 外层枚举长度len */ #include<bi
阅读全文
摘要:问题可以简化成, 最大能取到多少,使得前 个圆不能使左边界和右边界联通。 并查集维护圆与圆、圆与左右边界的联通性即可。 #include<bits/stdc++.h> using namespace std; #define N 505 typedef double db; const db eps
阅读全文
摘要:文件上传的传统方式 1. 导入文件上传的jar包 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dep
阅读全文
摘要:ajax发送post请求和发送get请求的一些区别: 当ajax使用post提交请求时,设置中文乱码的情况需要额外处理 同时post请求的参数在请求体里,所以参数应该写在send里,而get的参数直接写在url里,所以send里是空的 https://blog.csdn.net/qq_3849908
阅读全文
摘要:监听器 三种域对象的分类和性质 全局作用域对象共享数据发生变化时触发该监听器 首先定义一个servlet用来响应请求,更新全局作用域的共享数据来触发监听器 public class OneServlet extends HttpServlet { @Override protected void d
阅读全文
摘要:1、什么是JSON,有什么用? JavaScript Object Notation(JavaScript对象标记),简称JSON。(数据交换格式) JSON主要的作用是:一种标准的数据交换格式。(目前非常流行,90%以上的系统,系统A与系统B交换数据的话,都是采用JSON。) 2、JSON是一种标
阅读全文
摘要:window的open和close方法 <body> <script type="text/javascript"> /* 1、BOM编程中,window对象是顶级对象,代表浏览器窗口。 2、window有open和close方法,可以开启窗口和关闭窗口。 */ </script> <input t
阅读全文
摘要:DOM的概念,获取/更改文本框的value <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>DOM编程-获取文本框的value</title> </head> <body> <script type="text/javascri
阅读全文
摘要:三种嵌入html方式 <!doctype html> <html> <head> <title>HTML中嵌入JS代码的第一种方式</title> </head> <body> <!-- 1、要实现的功能: 用户点击以下按钮,弹出消息框。 2、JS是一门事件驱动型的编程语言,依靠事件去驱动,然后执行
阅读全文
摘要:返回类型是String controller 方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址。 //指定逻辑视图名,经过视图解析器解析为 jsp 物理路径:/WEB-INF/pages/success.jsp /** * 返回String * @param model * @re
阅读全文
摘要:RequestParam 作用: 把请求中指定名称的参数给控制器中的形参赋值。 属性: value:请求参数中的名称。 required:请求参数中是否必须提供此参数。默认值:true。表示必须提供,如果不提供将报错。 使用: <a href="/myWeb/anno/testRequestPara
阅读全文
摘要:/* 首先考虑dp状态:dp[i][j][k]表示考虑了前i个任务,凑成的第一级经验是j,第二级经验是k的用时 由于一级完成任务溢出的经验会给二级,所以任务完成顺序是对结果有影响的: 3 10 2 5 3 4 2 5 4 3 3 2 5 1 4 这组数据,如果先完成任务一或任务二,那么最终是完不成升
阅读全文
摘要:RequestMapping注解 作用: 用于建立请求 URL 和处理请求方法之间的对应关系 出现位置: 类上: 请求 URL 的第一级访问目录。此处不写的话,就相当于应用的根目录。写的话需要以/开头。 它出现的目的是为了使我们的 URL 可以按照模块化管理: 例如: 账户模块: /account/
阅读全文
摘要:1.启动服务器,加载一些配置文件 DispatcherServlet 对象被创建springmvc.xml 被加载HelloController 对象被创建InternalResourceViewResolver 视图解析器对象被创建开启mvc的注解支持 对应代码 初始网站页面index.jsp <
阅读全文
摘要:/* 首先想到二分正方形边长到源点的距离mid 然后判断这个距离是否可行: 枚举每个点,点到圆心的距离dis dis>=mid*sqrt(2),说明这个点对该正方形无影响 dis<mid,直接返回不可行 mid<=dis<mid*sqrt(2),说明该正方形需要保持一定的角度区间防止包含这个点 所有
阅读全文
摘要:/* 对模式串s建立sam,然后每个串t到sam里去跑, 每次跑到不能再往下匹配了,ans+1,对t[i]后面的字符再从头开始跑sam 如果有sam里没有的字符出现了,那答案必定是-1 */ #include<bits/stdc++.h> using namespace std; #define N
阅读全文
摘要:这题还是按角度进行极角排序简单点 /* 按亮度从大到小排序,从大的给小的连一条向量,极角排序后所有向量在两个象限内,那么可行,反之不可行 */ #include<bits/stdc++.h> using namespace std; #define N 1005 typedef double db;
阅读全文
摘要:http状态码 1.Http状态码是由一个三位数字组成符号 2.Http状态码由Tomcat负责创建生成 3.Http状态码由Tomcat写入到【状态行】 4.Http状态码通知浏览器在接收到响应包之后的行为Http状态码通知浏览器,服务端无法提供本次服务的原因 【分类介绍】:5类 1xx: 通知浏
阅读全文
摘要:这题的状态设计,预处理方式实在是太经典了! dp[i][j]表示用了i个格子,最上面一层有j个的方案数 这个东西是可以拆开后预处理的,如果比较抽象可以画个方格图看看 #include<bits/stdc++.h> #define ll long long #define ull unsigned l
阅读全文
摘要:概述: 1. HttpServeltResponse接口:负责将运行结果写入到响应包 2. HttpServletRequest接口: 负责读取请求协议包信息 3.ServletContext接口:可以为当前网站中所有的Servlet提欧【共享数据】 4.Cookie: 在一次会话过程中,存储浏览器
阅读全文
摘要:/* 1.具体请求路径: 如果浏览器请求的【资源文件地址】与当前Servlet中<url-pattern>的内容【完全一致】,Tomcat才会带调用当前Servlet 例子 OneServlet <url-pattern>/one.do</url-pattern> http://localhost:
阅读全文
摘要:tomcat部署 1.下载tomcat 9.0(向下兼容到jdk1.8) 2.配置CATALINA_HOME环境变量,value=C:\Users\ASUS\Desktop\apache-tomcat-9.0.33(tomcat所在的文件夹) 3.测试jdk的环境变量是否合法 4.切换到tomcat
阅读全文
摘要:https://www.cnblogs.com/fby698/p/11366712.html
阅读全文
摘要:G——直接把每种物品拆成一个个的,就可以用线性dp扫一次做完 /* 直接拆成一个一个的 dp[i][j]表示用j次机会把前i个拿下的概率 初始状态:dp[i][i]=dp[i-1][i-1]*p[i] dp[i][j]=dp[i-1][j-1]*p[i]+dp[i][j-1]*(1-p[i]) */
阅读全文
摘要:/* 如果堆的绝对高度>g,那么这个堆还可以继续删点;反之不能继续删点 层序遍历堆,按上述方法不断删点直到该点不能再删后,到下一个结点去删 ps:记得一定要把a数组初始化了! */ #include<bits/stdc++.h> using namespace std; #define N 2300
阅读全文
摘要:首先导入依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
阅读全文
摘要:导入依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x
阅读全文
摘要:思维题 /* 题意:给定一棵树,规定一种染色方案,要求有边相邻结点不能同时染色 求所有边诱导子图的染色方案数之和 转化:只有两个条件:1.右边相邻的结点不能同时染色 2.染色点至少要有一条边 f[u][0|1]表示不管u到父亲有没有边,该点不染色|染色,子树u的方案数 g[u]表示u和所有儿子之间没
阅读全文
摘要:准备工作 依赖导入 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan
阅读全文
摘要:准备工作: Account实体类 package com.itheima.domain; /** * 账户的实体类 * */ public class Account { private Integer id; private String name; private Float money; pu
阅读全文
摘要:/* 结论:可以同时改变任意两个块的奇偶性 所以如果n*m是奇数,那么初始状态无论如何设置都可以 n*m是偶数: 初始状态必须有偶数个偶数|偶数个奇数,求的时候用二项式反演一下即可 */ #include<bits/stdc++.h> using namespace std; #define ll
阅读全文
摘要:要使用注解,首先要给bean.xml配置一下 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/
阅读全文
摘要:首先准备三个类,分别对应三种依赖注入方式 <!-- spring 中的依赖注入 依赖注入: Dependency injection IOC的作用: 降低程序件的耦合(依赖关系) 依赖关系的管理: 以后都交给spring来维护 在当前类中需要用到其他类的对象,由spring提供,我们只需要在配置文件
阅读全文
摘要:首先准备一些类来模拟三层架构 dao层 IAccountDao的实现类:AccountDaoImpl package com.itheima.dao.impl; import com.itheima.dao.IAccountDao; /** * 账户的持久层实现类 */ public class A
阅读全文