【钓起来的tips系列】
●求n的阶乘:
#include<bits/stdc++.h>
using namespace std;
int n;
int jc(int k)
{
if(k==)return ;
else return jc(k-)*k;
} /*int jc(int k)
{ //我自己不太喜欢的一种写法_(:3z)__
int x;
if(k==1)x=1;
else x=k*jc(k-1);
return x;
}*/ int main()
{
cin>>n;
cout<<jc(n);
return ;
}
●~scanf的作用
位运算以达到控制循环的作用
https://blog.csdn.net/wtyvhreal/article/details/42006055(写得很好的一篇qwq)
●数学香瓜
- 要计算只包含加法、减法和乘法的整数表达式除以正整数n的余数,可以在 每步计算之后对n取余,结果不变。
●乱七八糟
- scanf只能一个一个读单词,不读空格
- sort形式:sort(first_pointer,first_pointer+n,cmp) //没有cmp比较函数就默认升序排列
- while(scanf("%s",&st)==1)输入神用
cin/cout之所以慢,是因为它多了和STDIO同步的过程,因此我们只需要把这个同步关系禁用就可以了,为了禁用这个同步关系,我们需要在main()函数开头加上以下代码:
ios::sync_with_stdio(false);
如此一来,同步关系就被禁用了,当然副作用是无法再使用scanf/printf。
- 【判断素数改进版】
int is_prime(int x)
{
if(x<=)return ;
int m=floor(sart(x)+0.5);
for(int i=;i<x;i++)
if(x%i==)return ;
return ;
}
●前綴和
- 听老师讲搜索和dp时总听到前缀和blabla,一直搞不懂,当然要查查啦!
- 引自K_rew的博客:https://blog.csdn.net/K_rew/article/details/50527287
一维前缀和
这个优化主要是用来在O(1)时间内求出一个序列a中,a[i]+a[i+1]+……+a[j]的和。具体原理十分简单:用sum[i]表示(a[1]+a[2]+……+a[i]),其中sum[0]=0,则(a[i]+a[i+1]+……+a[j])即等于sum[j]-sum[i-1]。
二维前缀和
同理,有一维就有二维。对于一个矩阵a,我们也能在O(1)时间内求出子矩阵[x1~x2][y1~y2]的和。设sum[i][j]为子矩阵[1~i][1~j]的和。则由容斥原理得:
sum[0][j]=sum[i][0]=0
a[x1~x2][y1~y2]=sum[x2][y2]-sum[x1-1][y2]-sum[x2][y1-1]+sum[x1-1][y1-1]
- c++输入输出流
sprintf妙啊!
代码来源:https://blog.csdn.net/jllongbell/article/details/79092891
int main(){
char str[256] = { 0 };
int data = 1024;
//将data转换为字符串
sprintf(str,"%d",data);
//获取data的十六进制
sprintf(str,"0x%X",data);
//获取data的八进制
sprintf(str,"0%o",data);
const char *s1 = "Hello";
const char *s2 = "World";
//连接字符串s1和s2
sprintf(str,"%s %s",s1,s2);
cout<<str<<endl;
return 0;
}2.但是!更妙的是这个stringstream啊!
stringstream被群里dalao嘲讽了…_(:3/_)__我不管我就觉得他好用哼
https://blog.csdn.net/qq_28114615/article/details/85778797
(lrj大佬:可以把string作为流进行读写,定义在sstream头文件中。 虽然string和sstream都很方便,但string很慢,sstream更慢,应谨慎使用)
- cin>>t有时候比while啥玩意快的,详细可以看机器翻译那道题的提交记录……
- #define For(i,l,r) for (register int i=l; i<=r; i++) 压行快乐
- int本来就是signed int,int = signed int = signed 有时候直接 #define int long long 了,就要把int main改成signed main
- __builtin_popcount计算二进制某数中1的个数
【钓起来的tips系列】的更多相关文章
- 【转】Android Studio-1.2版本设置教程
如果重新安装Android Studio的话要重新配置风格选项啥的,这篇是个很好的教程,原文链接:http://blog.csdn.net/skykingf/article/details/45485 ...
- Android 学习资料收集
收集整理这份资料灵感来自于 trip_to_iOS, 征得同意引用了该资料的开头描述 收集整理这份资料主要帮助初学者学习 Android 开发, 希望能快速帮助到他们快速入门, 找到适合自己学习资料, ...
- 转载:Android Studio 快捷键
Android Studio使用技巧系列教程(一) 分类: android studio2015-07-08 10:04 4774人阅读 评论(6) 收藏 举报 android开发ideandroid ...
- [jstips]向数组中插入一个元素
向现有数组中插入一个元素是经常会见到的一个需求.你可以: 使用push将元素插入到数组的尾部: 使用unshift将元素插入到数组的头部: 使用splice将元素插入到数组的中间: 上面那些方法都是常 ...
- [jstips]undefined和null的区别
undefined是指一个变量没有被声明,或者被声明了但是还没有被赋值 null是一个特定值(an assignment value ),代表"没有值"(no value) Jav ...
- 如何利用 AVDictionary 配置参数(转)
本文是我的 FFMPEG Tips 系列的第五篇文章,准备介绍下 ffmpeg 提供的一个非常好用的健值对工具:AVDictionary,特别是对于没有 map 容器的 c 代码,可以充分利用它来配置 ...
- Newtonsoft.Json C# Json序列化和反序列化工具的使用、类型方法大全 C# 算法题系列(二) 各位相加、整数反转、回文数、罗马数字转整数 C# 算法题系列(一) 两数之和、无重复字符的最长子串 DateTime Tips c#发送邮件,可发送多个附件 MVC图片上传详解
Newtonsoft.Json C# Json序列化和反序列化工具的使用.类型方法大全 Newtonsoft.Json Newtonsoft.Json 是.Net平台操作Json的工具,他的介绍就 ...
- [译]MVC网站教程(四):MVC4网站中集成jqGrid表格插件(系列完结)
目录 1. 介绍 2. 软件环境 3. 在运行示例代码之前(源代码 + 示例登陆帐号) 4. jqGrid和AJAX 5. GridSettings 6. ...
- 前端工程师技能之photoshop巧用系列第一篇——准备篇
× 目录 [1]作用 [2]初始化 [3]常用工具[4]快捷键 前面的话 photoshop是前端工程师无法回避的一个软件,这个软件本身很强大,但我们仅仅需要通过这个工具来完成基本的切图工作即可.本文 ...
随机推荐
- img、a标签的使用
<!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...
- 在引入的css或者js文件后面加参数的作用
有时候可能会遇到js或者css文件引用后传递参数: css和js带参数(形如.css?v=与.js?v=) <script type=”text/javascript” src=”jb51.js ...
- 洛谷P1598 垂直柱状图
模拟题...我自己一直被光标下去上不去怎么模拟困扰,实际上可以直接从高到低,从左到右模拟 我的代码(算法借鉴题解) #include <bits/stdc++.h> using names ...
- JavaScript控制iframe中元素的样式
//根据ID获取要操控元素 var deptObjs=document.getElementById("IFRAMEID").contentWindow.document.getE ...
- 66.零停机下reindex
主要知识点: 理解reindex的使用场景和必要性 学会reindex 一.理解reindex的使用场景和必要性 假设:在某一个index中依靠dynamic mapping插入数据, ...
- 洛谷 3203 HNOI2010 BOUNCE 弹飞绵羊
[题解] 这道题可以用Link-Cut Tree写.. 首先建立一个虚拟节点N+1,$i$与$N+1$连边表示$i$被弹飞了 对于修改操作,先$cut(i,min(n+1,i+k[i]))$,然后再$ ...
- PKI 的组成
PKI(Public Key Infrastructure)公钥基础设施是提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书.一个机构通过采用PKI 框架管理密钥和证书可以建立一个安全的 ...
- 清北学堂模拟赛d5t5 exLCS
分析:比较巧妙的一道题.经典的LCS算法复杂度是O(nm)的,理论上没有比这个复杂度更低的算法,除非题目有一些限制.这道题中两个字符串的长度不一样,f[i][j]如果表示第一个串前i个,第二个串前j个 ...
- 洛谷—— P3576 [POI2014]MRO-Ant colony
https://www.luogu.org/problem/show?pid=3576 题目描述 The ants are scavenging an abandoned ant hill in se ...
- hibernate之一对多映射
目录 第一章 课程简介 第二章 Hibernate中的单向一对多关联 2-1 一对多映射简介 2-2 hibernate的基础配置 2-3 创建HibernateUtil工具类 2-4 在mysql数 ...