const

POJ 2002 Squares 解题报告 哈希

回眸只為那壹抹淺笑 提交于 2020-03-06 05:03:54
POJ 2002 Squares 解题报告 题意:给出平面中的点,求用这些点最多能构成多少个正方形。 解题思路:正常思路直接暴力肯定超时,看了别人的blog,其实就是用离散化的方法极大减小了遍历时间。其他地方就没什么难的了。还发现一点:new分配的类会自动初始化,malloc只分配空间,类构造函数没用,next指针还得自己赋成NULL。 # include <iostream> # include <math.h> # include <iomanip> # include <algorithm> # include <iostream> # include <math.h> # include <iomanip> # include <algorithm> # include <queue> # include <cstring> # include <string> # include <map> # include <stack> # include <stdio.h> # include <cstdio> # include <stdlib.h> # include <fstream> # include <iomanip> # pragma warning(disable:4996) # define INF 0x3f3f3f3f # define ll long

vuex 中模块化开发的一些知识

回眸只為那壹抹淺笑 提交于 2020-03-06 04:46:51
index.html <!doctype html> <html lang="en"> <head> <title>Title</title> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> </head> <body> <div id="app"></div> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery

CF Round #625 Div1

旧巷老猫 提交于 2020-03-06 03:58:15
我的第 100 场参与排名的 Codeforces 记录一下 contest id 1320 A. Journey Planning 给一个长度为 \(n\) 的序列 \(b\) ,求子序列中满足原下标差与序列两项差相等的最大和 就是说有个序列 \(b\) ,求出一个子序列 \(x\) ,它在原序列中的下标依次为 \(c\) ,则对每个 \(i\) 都有 \(c_{i+1}-c_i = b_{c_{i+1}}-b_{c_i}\) 求 \(\sum x\) 的最大值 显然对于 \(i-b_i\) 相同的值都是可以放在同一个子序列中的,贪心丢进去就行了,图方便没有去判断正负直接用 \(map\) 储存差值即可 /*================================================================ * * 创 建 者: badcw * 创建日期: 2020/3/1 * ================================================================*/ #include <bits/stdc++.h> #define ll long long using namespace std; const int maxn = 2e5+50; const int mod = 1e9+7; ll qp(ll

outdated: 30. Collision Detection

≯℡__Kan透↙ 提交于 2020-03-06 03:34:50
这段代码花了我近一周时间学习。 球体之间的相互碰撞,球体与墙面之间的相互碰撞,球体与木桩之间的相互碰撞。小键盘+/-控制球体的timestep,也就是速度。UP/DOWN/LEFT/RIGHT控制camera,W/S/A/D控制位移。 F2控制camera跟进某个小球,可观察小球的碰撞路径。 一、碰撞检测 平面 圆柱 移动的球体 二、基础物理模型 碰撞应答 模拟在重力下(Using Euler Equations ) 三、特效 爆炸模型(Using A Fin-Tree Billboard Method) 音效(Using The Windows Multimedia Library) 四、文件 分为五个文件 demo.cpp : Main code Image.cpp, Image.h : Code to load bitmaps Tmatrix.cpp, Tmatrix.h : Classes to handle rotations Tray.cpp, Tray.h : Classes to handle ray operation Tvector.cpp, Tvector.h : Classes to handle vector opertation 一、碰撞检测 碰撞检测在这里使用光线追踪算法,定义的‘光线’是一个有方向的标准化向量,其方程为: (1)、平面---与平面碰撞

Node基础--day03

好久不见. 提交于 2020-03-06 03:32:46
1. 浏览器端的 AMD 和 CMD 模块化规范 (了解) 浏览器端,不能使用 Common.js 规范,因为 Common.js 是同步加载的; AMD/CMD 可以理解为,common.js 在浏览器端,的解决方案,是异步加载的; AMD模块化规范代表:RequireJS框架 对于依赖的模块,AMD 是提前执行; 推崇依赖前置,先定义模块,再使用; CMD模块化规范代表:SeaJS框架 对于依赖的模块,CMD 是延迟执行; CMD 推崇,尽可能晚的,执行这个模块,类似懒加载;推崇依赖就近; ES6模块化 (大趋势):ES6 在语言标准层面上(语法上),实现了模块化功能,而且实现得相当简单;完全可以取代 CommonJS 和 AMD 规范,成为浏览器和服务器,通用的模块化解决方案;(vue Reat 前端框架会使用) 2. 模块成员的分类 Node.js 由三部分组成:ECMAScript 核心 + 全局成员 + 模块成员 模块成员,分三类: 核心模块、第三方模块、用户自定义模块 核心模块 随着Node.js的安装包,一同安装到,本地的模块;如:fs,path 等; 核心模块使用:require(‘核心模块标识符’) 第三方模块 非官方提供的模块;必须去 NPM 网站上下载,才能使用; 先从 npm 官网上,下载指定的,第三方模块; require(‘第三方模块标识符’)

CodeCraft-20 (Div. 2)

烈酒焚心 提交于 2020-03-06 03:25:02
比赛链接: CodeCraft-20 (Div. 2) A. Grade Allocation 题意:啊懒得说了 分析:啊懒得分析了 #include<bits/stdc++.h> #define pb push_back using namespace std; typedef long long ll; const int maxn=2e5+7; const int mod=1e9+7; const ll INF=1e18; int a[maxn]; void rua() { int n,m,sum=0;scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%d",&a[i]),sum+=a[i]; int ans=min(sum,m); ans=max(a[1],ans); printf("%d\n",ans); } int main() { int t;scanf("%d",&t); while(t--) rua(); return 0; } B. String Modification 题意:相邻的1..n位反转,求反转后字典序最小的; 分析:手画一下就知道,反转后的字符串就是先后面一段,根据奇偶决定前面的一段是正着还是倒着姐在后面; #include<bits/stdc++.h> #define pb push_back

QTableView QAbstractTableModel QStyledItemDelegate QHeaderView 定制化表格(二)

不羁的心 提交于 2020-03-06 01:40:42
一、效果图 二、工程构建思路 依据mvc模型,重写QTableView QAbstractTableModel QStyledItemDelegate QHeaderView,利用QStyleOptionProgressBar自定义进度条样式,重写createEditor等必要函数实现自定义编辑输入框。 三、代码片段 //样式代理部分 # include "tabledelegate.h" TableDelegate :: TableDelegate ( QObject * parent ) : QStyledItemDelegate ( parent ) { } void TableDelegate :: paint ( QPainter * painter , const QStyleOptionViewItem & option , const QModelIndex & index ) const { //去掉Focus QStyleOptionViewItem viewOption ( option ) ; initStyleOption ( & viewOption , index ) ; if ( option . state . testFlag ( QStyle :: State_HasFocus ) ) viewOption . state =

flux的组件拆分(2018/12/16)

依然范特西╮ 提交于 2020-03-06 00:05:44
一、将flux的组件拆分成无状态组件------->UI组件 和 容器组件 这样会加快页面的加载和渲染的速度 增删效果未拆分之前 App.js import React, { Component,Fragment } from 'react'; import Input from './components/input' import List from './components/list' import dispatcher from './store/dispatcher' console.log(dispatcher) class App extends Component { render() { return ( <Fragment> <Input/> <List/> </Fragment> ); } } export default App; components/input.js import React,{Component} from 'react' import store from '../store' import dispatcher from '../store/dispatcher' console.log(dispatcher) class Input extends Component{ constructor(){ super(); this

快速掌握ES6 iterator Generator和async 之间的关系及其用法

﹥>﹥吖頭↗ 提交于 2020-03-05 23:17:38
1.遍历器iterator 1.1 for遍历 首先从远古讲起,刚出js的时候如何遍历一个数组呢? var arr = [1, 2, 3, 4, 7, 8, 9] for (let i = 0;i < arr.length;i++) { console.log(arr[i]); } 1.2 forEach遍历 看起来笨的一批,所以ES5给你研究了一个foreach方法,但是这个方法不能break,也不能改变数组自身的值,也不能返回任何值。 var arr = [1, 2, 3, 4, 7, 8, 9] var arr2 = arr.forEach((element, index) => { console.log('第' + index + '个数值为:' + element); return element * 2; }); console.log(arr2) // undefined console.log(arr1) // [1, 2, 3, 4, 7, 8, 9] 所以说foreach只给你最基本的操作,其他一概不管,如果你想要改变自身的值或者有break和countinue操作我们可以使用map操作,不展开讲了,之前专门写了篇博客总结了下。 wzr: 数组遍历方法总结 1.3 for-in遍历 那么ES6专门为遍历数组提供了一种方法,就是for-of。说道for-of

gulp相关

穿精又带淫゛_ 提交于 2020-03-05 22:37:32
一、简介 gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器; gulp是基于Nodejs的自动任务运行器,她能自动化地完成 javascript/coffee/sass/less/html/image/css 等文件的的测试、检查、合并、压缩、格式化、浏览器自动刷新、部署文件生成,并监听文件在改动后重复指定的这些步骤。在实现上,她借鉴了Unix操作系统的管道(pipe)思想,前一级的输出,直接变成后一级的输入,使得在操作上非常简单。 二、安装   通过 npm 来安装 gulp;(设置镜像源可以通过cnpm安装) 全局安装   在cmd中执行 cnpm i -g gulp 查看是否正确安装:命令提示符执行gulp -v,出现版本号即为正确安装 三、配置信息   1. npm init -y 生成package.json 文件 会自动存储下载的第三方依赖包信息,存储信息如下: { "name": "zhang", "version": "1.0.0", "description": "", "main": "gulpfile.js", "devDependencies": { "@babel/core": "^7.8.7", "@babel/preset-env": "^7.8.7", "del": "^5.1.0", "gulp": "^4.0.2",