【模板】快速傅里叶变换FFT
讲解:
快速傅里叶变换(FFT)详解
公式介绍比较详细。
FFT详解
原理讲解比较清晰。
建议两篇一起看一下。
如果只是在基础应用层面不去深究,FFT还是比较好懂的。
代码
多项式乘法:洛谷P3803&uoj34
#include<cstdio>
#include<iostream>
#include<cmath>
#inc...
【BZOJ】2001: [Hnoi2010]City 城市建设-cdq分治/LCT
传送门:bzoj2001
题解
此题LCT动态维护MST貌似很可做(然而本蒟蒻不会)
这里分享看到的一种很妙的分治做法。
我们简化一下问题:
每次修改(x,y)(x,y)(x,y)权值,若能使MST总边权变小,则满足:
原MST上x−>yx−>yx->y路径上最大值大于(x,y)(x,y)(x,y)权值
(仔细想想,感觉非常有道理:
若大于等于x->y...
【BZOJ】3621 我想那还真是令人高兴啊-复数
传送门:bzoj3621
题解
我们把每个坐标看成一个复数,在复平面上两两之间连线的变换值恰好可以用同一个复数表示(这里讲的不清晰,还是贴一下PoPoQQQ的题解)
首先两个复数相乘的几何意义是【极角相加,长度相乘】 这两种变换正好对应旋转和放缩
那么我们不妨将所有点都放到复平面上
由于没有给定点的对应关系,故我们3!枚举这个对应关系
设其中一个三角形的三个顶点为A,B,C,另一个三...
基于 Netty + Spring 实现一个 HTTP REST 服务器(五)Gevlet 源码分享之线程池实现
Gevlet 源码分享之线程池实现
关于线程池的实现 此处就不再赘述。代码如下:
ThreadPool 接口
import java.util.concurrent.Executor;
public interface ThreadPool {
Executor getExecutor(int coreNum,int threadNum, int queueNum);
}
Thr...
基于 Netty + Spring 实现一个 HTTP REST 服务器(六)Gevlet 源码分享之补充部分
Gevlet 源码分享之补充部分
Bootstract 启动引导类实现
public class Bootstract {
//测试用
public static final String APP_PATH_LOCATION = "E:\\gevlet-app";
/**
* 启动类
* @param args
*/
pub...
Java IO 随笔(二) 文件访问
Java文件访问
在Java中和文件相关的IO操作主要有 FileInputStream、FileOutputStream、FileReader、FileWriter以及随机文件访问 RandomAccessFile。
1.Java IO读取文件
1.1 FileInputStream 文件输入流
FileInputStream 是 InputStream 的子类,所以 FileIn...
Java IO 随笔(三) RandomAccessFile 随机文件访问
RandomAccessFile 随机文件访问
RandomAccessFile 虽然也可以实现对文件的读与写操作,但是不同于FileInputStream、FileOutputStream、FileReader、FileWriter的是 RandomAccessFile 提供了文件指针,可以自由的读取和写入文件中的任意部分。这也是为什么叫 RandomAccess 随机访问的原因。
还...
Python-列表 元组-list tuple
列表 list [vale,...] 可加入任意类型数据,并可嵌套,不定长 student = ["beimenchuixue", "maYun", "maHuiTeng", "naiChaDong"]
product = ["blog", "taoBao", "weiChat", "JD"]
score = ["beimenchuixue", [90, 80, 66, 77, 99]] 列表访问 1. 指定插入 .insert 2. 末尾插入 .append 3. 知值删 .
mysql的onestart和start区别
在FreeBSD上安装了mysql5.7之后,启动mysql时报了如下的错误: root@tuhooo:~ # /usr/local/etc/rc.d/mysql-server start
Cannot 'start' mysql. Set mysql_enable to YES in /etc/rc.conf or use 'onestart' instead of 'start'. 由于没有加入到开机启动项,然后每次开机都要用onestart选项,而不能用start,由于我不想每次开机启动
luogu 5月月赛 #A
T29693 取石子 题目描述 Alice 和 Bob 在玩游戏。 他们有 nn 堆石子,第 ii 堆石子有 a_iai 个,保证初始时 a_i \leq a_{i + 1}(1 \leq i < n)ai≤ai+1(1≤i<n) 。现在他们轮流对这些石子进行操作,每次操作人可以选择满足 a_i > a_{i - 1}ai>ai−1 ( a_0a0 视为 00 )的一堆石子,并从中取走一个。谁最后不能取了谁输。Alice 先手,他们都使用最优策略,请判断最后谁会取得胜利。 输入输出格式 输入格
ubuntu 对拍和基本操作
转自 夏天学长 我们在学对拍之前先学一下diff diff my.out right.out; 这样就能比较两个文件。 建一个check.sh,把上面一句话写进去就行了。 bash ./check.sh 1c1
< 87
---
> 1087 上面的1c1表示在第1行错了。 用上面的方法,如果加的是: #!bin/bash
while true; do
./date
./my
./right
if diff my.out right.out; then
echo AC
else
echo WA
springMVC引入Validation详解
本文简单介绍如何引入validation的步骤,如何通过自定义validation减少代码量,提高生产力。特别提及:非基本类型属性的valid,GET方法的处理,validation错误信息的统一resolve。 本文中validation的实际实现委托给Hibernate validation处理 基本配置 pom引入maven依赖 <!-- validation begin -->
<dependency>
<groupId>javax.validation</groupId>
vue.js note
1. vue-cli文件执行顺序 index.html -> main.js -> App.vue(根组件,用来融合各个子vue,子vue自带style&script) 2. 子vue和app.vue的调用关系 --- 子vue通过export default来展现接口 --- app.vue 通过import来使用 3. 父与子数据传递 父 v-bind->子 props 子 this.$emit->父 v-on $event 4. router-link routerv-view in
IOI 2011 Rice Hub 米仓
题目 分析 首先来观察一下这题的数据范围,Subtask 4当中的数据量10^15大到惊人的程度。很显然这是我们所不能够处理的数据量。但转而看R的大小,就令人能够接受了,那么不难想到,这里有一个离散化的思路。 然后我们考虑如何安排这个米仓。这个米仓其实就相当于一个“中位数”,也就是安排在米仓能够处理的区间的正当中。 这里出现了一个“区间”的概念,那么我们就可以想到用一个类似二分的思想来枚举区间的左右边界。 首先O(R)枚举左边界,然后嵌一个while查右边界,写一个check函数来检查这个区间
MS SQLServer升级
升级方式:本地升级和并列升级
* 本地升级
要么完全成功、要么完全失败。
* 并列升级
实质是在全新安装后进行数据库迁移。
升级前的工具:
* SQLServer升级顾问
* SQLServer升级助手
升级后的检查:
* 更新统计信息(sp_updatestats)
...
codeforces17A——Noldbach problem
Nick is interested in prime numbers. Once he read about Goldbach problem. It states that every even integer greater than 2 can be expressed as the sum of two primes. That got Nick’s attention and h...
Java基础温习之反射相关大集合
什么是反射 反射是在运行时而非编译时动态获取类型的信息(譬如接口信息、成员信息、方法信息、构造方法信息等)然后依据这些动态获取到的信息创建对象、访问修改成员、调用方法等。 通过调用 Class.forName(clzss) 方法可以访问返回一个以指定字符串 clzss 为类名的类对象,因为 java 里面任何 class 都要装载在虚拟机上才能运行,所以那个方法的作用就是装载类用的 也可以直接通过类名.Class获取 Class 类对象 还可以通过实例.getClass() 方法获取 Clas
今日推荐
周排行