tmp

lintcode 1665. 计算数字

左心房为你撑大大i 提交于 2020-01-13 07:03:58
给出一个十进制数num,现在你需要把它转成二进制数,并返回1的个数和位置。 样例 例1: 输入: 10 输出: [2,1,3] 解释: 10转成2进制为1010,总共有2个1,所以ouptput数组第一个是2。然后1的位置是第1个和第3个,所以后续两个数为1,3. 例2: 输入: 7 输出: [3,1,2,3] 解释: 7转成2进制为111,总共有3个1,所以output数组第一个是3。然后的位置是第1个、第2个和第3个,所以后续三个数为1,2,3. 注意事项 n<=10^9 思路:用string前插记录其二进制数,再通过记录位置依次输出即可 class Solution { public: /** * @param num: the num * @return: the array subject to the description */ vector<int> calculateNumber(int num) { // Write your code here. int count=0; vector<int> res; string tmp; res.push_back(count); while(num) { tmp.insert(tmp.begin(),num%2+'0'); num/=2; } for (int i = 0; i < tmp.size(); i++)

2020 CCPC Wannafly Winter Camp Day1 C. 染色图

时光总嘲笑我的痴心妄想 提交于 2020-01-12 23:30:31
2020 CCPC Wannafly Winter Camp Day1 C. 染色图 定义一张无向图 G=⟨V,E⟩ 是 k 可染色的当且仅当存在函数 f:V↦{1,2,⋯,k} 满足对于 G 中的任何一条边 (u,v),都有 f(u)≠f(v)。 定义函数 g(n,k) 的值为所有包含 n 个点的无自环、无重边的 k 可染色无向图中的边数最大值。举例来说,g(3,1)=0,g(3,2)=2,g(3,3)=3。 现在给出三个整数 n,l,r,你需要求解: \((\sum_{i=l}^rg(n,i))mod998244354\) 输入格式: 第一行输入一个整数 \(T(1≤T≤10^3)\) ,表示数据组数。 对于每组数据,输入三个整数 \(n,l,r(1≤l≤r≤n≤10^9)\) 。 输出格式 对于每组数据,输出一行一个整数表示答案。 输入样例: 5 3 1 1 3 2 2 5 2 4 10 3 9 1000 123 789 输出样例: 0 2 23 280 332539617 时间限制: 1000 ms 内存限制: 256 MB 代码长度限制: 16 KB 分析 n个点,m种颜色,可以分成 \(m\) 堆,每堆的颜色都是相同的,这样就会有 \(n\%m\) 堆有 \(n/m+1\) 个点, \(m-n\%m\) 堆有 \(n/m\) 个点,堆与堆之间的点都是要两两连线的

findstr的命令行分析机制

末鹿安然 提交于 2020-01-12 20:12:15
来源:http://www.cn-dos.net/forum/viewthread.php?tid=21167&fpage=1&highlight=findstr willsort 版主 To All: 问题缘起于bsijl一篇关于findstr错误过滤的主题[1],当时因为无法找到原因,所以只能推测 /g 开关存在某些问题。 近日,因为编写一个debuger代码,再次使用了 findstr/g ,结果遇到了同样的问题[2]。经过仔细的测试[3]后,发现是 findstr 特殊的命令行分析机制所引起的问题。略述如下: 1、findstr不同于早期的find,它对参数的排列有一定的要求,即遵循开关(可省略)、字符串(使用/c开关时省略)、文件名(可通配、可多个、有输入流时需省略)的顺序。 2、开关可以使用引号,所以不能直接以与开关相同的关键字进行搜索;文件名含空格时必须用引号。 3、搜索关键字的情况和表现就比较复杂,分述如下: 3-1、无论是否使用开关/l或/r以及是否使用引号,关键字中的\都会成为转义字符,所以\\将成为\,\"将使引号失去字符串界定作用; 3-2、搜索关键字可加或不加引号,当加引号时其中的\可能会再次转义。使用开关/l和/r时的转义结果可能会不同:当使用/r时,所以"\\\\"将成为单个\,"\\"将使关键字为空;当使用/l或均不使用时,"\\\\"和"\\

Write to /tmp directory in aws lambda with python

二次信任 提交于 2020-01-12 03:42:05
问题 Goal I'm trying to write a zip file to the /tmp folder in a python aws lambda, so I can extract manipulate before zipping, and placing it in s3 bucket. Problem Os Errno30 Read Only FileSystem This code was tested locally on my computer to make sure the file would write to my working directory before I uploaded it to aws. This is the code i'm trying to use. file = downloadFile() #This is api call that returns binary zip object newFile = open('/tmp/myZip.zip','wb') newFile.write(file)

leet75:颜色分类

谁说我不能喝 提交于 2020-01-12 02:17:13
本问题被称为 荷兰国旗问题 ,最初由 Edsger W. Dijkstra提出。 public static void sortColors ( int [ ] nums ) { // 对于所有 idx < i : nums[idx < i] = 0 // j是当前考虑元素的下标 int p0 = 0 , curr = 0 ; // 对于所有 idx > k : nums[idx > k] = 2 int p2 = nums . length - 1 ; int tmp ; while ( curr <= p2 ) { if ( nums [ curr ] == 0 ) { // 交换第 p0个和第curr个元素 // i++,j++ tmp = nums [ p0 ] ; nums [ p0 ++ ] = nums [ curr ] ; nums [ curr ++ ] = tmp ; } else if ( nums [ curr ] == 2 ) { // 交换第k个和第curr个元素 // p2-- tmp = nums [ curr ] ; nums [ curr ] = nums [ p2 ] ; nums [ p2 -- ] = tmp ; } else curr ++ ; } for ( int i = 0 ; i < nums . length ; i ++ )

ACM 位运算,(矩阵)快速幂

你离开我真会死。 提交于 2020-01-11 00:21:12
位运算 & 按位与,全1为1。例如5&3-----> 101&11----->1即1 | 按位或,有1则1。例如5|3-----> 101|11 ---->111即7 ^按位异或,相同为0,不同为1。例如5^3----->101^11---->110即6 ~取反运算,0变1,1变0,例如~5—>101—>010即2 <<左移指令 >>右移指令 快速幂运算,即模平方重复计算法 为什么要有快速幂运算,因为对于c++来说,pow函数在函数库中的定义之中是通过连续相乘得到的结果,那么对于一些小的幂来说,计算确实很快,但是当幂达到1e8往上这些大的幂来说的话,时间复杂度太大,过于耗时,所以采用了快速幂的算法,来提高运算的速度,对于 2 2 1 00 2^{2^100} 2 2 1 0 0 来说,普通算法要运算 2 1 00 2^100 2 1 0 0 次,而采用快速幂算法的话,只需要运算100次,也就是时间复杂度是O(logn),原本的时间复杂度是O(n)级别的; 具体原理: 对于想要求得的一个 b y b^y b y ,我们可以把y化成二级制的科学计数法,也就是 y = a n 2 c n + . . + a 1 2 c 1 + a 0 y=a_n2^{c_n}+..+a_12^{c_1}+a_0 y = a n ​ 2 c n ​ + . . + a 1 ​ 2 c 1 ​ + a 0

01-学习vue前的准备工作

时间秒杀一切 提交于 2020-01-10 21:55:43
起步 1.扎实的 HTML/CSS/Javascript 基本功,这是前置条件。 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法。 不推荐上来就直接用 vue-cli 构建项目,尤其是如果没有 Node/Webpack 基础。 另外在这里大家补充点ES6的语法。 什么是ECMAScript,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界得到了广泛的支持,它奠定了JS的基本语法,被其后版本完全继承。直到今天,我们一开始学习JS,其实就是在学3.0版的语法 2000年的ECMAScript4.0是当下ES6的前身,但由于这个版本太过激烈,对ES3做了彻底升级,所以暂时被“和谐”了 2009年12月,ECMAScript5.0版正式发布。ECMA专家组预计ECMAScript的第五个版本会在2013年中期到2018年作为主流的开发标准。2011年6月,ES5.1版发布,并且成为ISO国际标准 2013年,ES6草案冻结,不再添加新的功能,新的功能将被放到ES7中;2015年6月,ES6正式通过,成为国际标准 好的,介绍es6的诞生,我们简单来学几个es6的语法,仅仅的只是为了后面咱们vue的课程做课前准备。如果感兴趣的同学可以查看 http:

es6 let和const的用法

血红的双手。 提交于 2020-01-10 20:57:40
<template> <div> <el-button @click="click()">let用法:点击看控制台</el-button> <el-button @click="clickConst()">const用法:点击看控制台</el-button> </div></template><script> export default { name: "Base", methods: { click: function () { /*1、let作用域:自己最近的{}*/ let a = 10;//只在let命令所在的代码块内有效(在click方法外引用就会报错)。适用于for循环。 var c = []; for (let i = 0; i < 10; i++) { /*i用var定义,输出结果都是10,也就是说,所有数组c的成员里面的i, 指向的都是同一个i,导致运行时输出的是最后一轮的i的值,也就是10。*/ c[i] = function () { console.log(i); }; } c[7]();//结果7,使用let定义时i是几输出就是几 //2、变量提升*/ for (let j = 0; j < 3; j++) { // let j = 'abc'; console.log(j);//输出0 1 2 } let bar = 2; console.log(

01-----学习vue前的准备工作

自闭症网瘾萝莉.ら 提交于 2020-01-10 20:56:54
起步 1.扎实的 HTML/CSS/Javascript 基本功,这是前置条件。 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法。 不推荐上来就直接用 vue-cli 构建项目,尤其是如果没有 Node/Webpack 基础。 另外在这里大家补充点ES6的语法。 什么是ECMASscrpt,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界得到了广泛的支持,它奠定了JS的基本语法,被其后版本完全继承。直到今天,我们一开始学习JS,其实就是在学3.0版的语法 2000年的ECMAScript4.0是当下ES6的前身,但由于这个版本太过激烈,对ES3做了彻底升级,所以暂时被“和谐”了 2009年12月,ECMAScript5.0版正式发布。ECMA专家组预计ECMAScript的第五个版本会在2013年中期到2018年作为主流的开发标准。2011年6月,ES5.1版发布,并且成为ISO国际标准 2013年,ES6草案冻结,不再添加新的功能,新的功能将被放到ES7中;2015年6月,ES6正式通过,成为国际标准 好的,介绍es6的诞生,我们简单来学几个es6的语法,仅仅的只是为了后面咱们vue的课程做课前准备。如果感兴趣的同学可以查看 http:

01-学习vue前的准备工作

笑着哭i 提交于 2020-01-10 20:55:23
01-学习vue前的准备工作 起步 1.扎实的 HTML/CSS/Javascript 基本功,这是前置条件。 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法。 不推荐上来就直接用 vue-cli 构建项目,尤其是如果没有 Node/Webpack 基础。 另外在这里大家补充点ES6的语法。 什么是ECMAScript,以及es6的诞生? 1997年 ECMAScript 1.0 诞生 1999年12月 ECMAScript 3.0诞生,它 是一个巨大的成功,在业界得到了广泛的支持,它奠定了JS的基本语法,被其后版本完全继承。直到今天,我们一开始学习JS,其实就是在学3.0版的语法 2000年的ECMAScript4.0是当下ES6的前身,但由于这个版本太过激烈,对ES3做了彻底升级,所以暂时被“和谐”了 2009年12月,ECMAScript5.0版正式发布。ECMA专家组预计ECMAScript的第五个版本会在2013年中期到2018年作为主流的开发标准。2011年6月,ES5.1版发布,并且成为ISO国际标准 2013年,ES6草案冻结,不再添加新的功能,新的功能将被放到ES7中;2015年6月,ES6正式通过,成为国际标准 好的,介绍es6的诞生,我们简单来学几个es6的语法,仅仅的只是为了后面咱们vue的课程做课前准备