b=a-b;
a=a-b;
printf("%d%d\n",a,b);
可简化为a^=b^=a^=b;
C语言中输出“%d”字符
用printf("%%d");
puts("%d");
竞赛平台
int范围约为:-2.1*10^9~2.1*10^9
long long范围约为:-9.2*10^18~9.2*10^18
unsigned long long 范围,0~1.8*10^19
注意:定义无符号类型时要加uLL,如:10108uLL;
计算数据类型的范围
#include<limits>
cout<<std::numeric_limits<int>::max()<<endl; //int能表示的最大
cout<<std::numeric_limits<int>::min()<<endl; //int能表示的最小
10^-6可编写为1e-6
往数组中输入不定量个数的数
int a[1000],n=0,x;
while(cin>>x)
a[n]=x;
不限次输入字符
while((c=getchar())!=EOF) //C语言
if(a[i])意思是,如果a[i]==1;
If(!a[i])意思是,如果a[i]==0;
测量string类型长度变量用length(),如:
string t;
inttt=t.length();
可用typedef struct{double x,y;}Point;的形式代替结构体,让其更像新生结构类型
string类型的数据相加,就是字符串拼接
定义大数组时尽量用如下形式:
using namespace std;
const int maxn=10000;
int a[maxn];
Vercor就是一个不定长数组,例如:若a是一个vector,可以用a.size()读取它的大小,a.resize()改变大小,a.push()_back()向尾部添加元素,a.pop_back()删除最后一个元素,clear()清空,empty()测试是否为空
Vector是一个模板类,用vector<int> a或者vector<double> b来声明一个vector,vector<int>类于int a[]的整型数组
set<string>::iterator是迭代器,类于指针
set迭代器中的元素已从小到大排列好
就是从键到得映射,如:
map<string,int> month_name来表示“月份名字到月份编号”的映射,然后用month_name[“July”]=7;来赋,更多理解详见UVA156
1.STL的栈在头文件<stack>中,用stack<int> s声明
2.STL的队列在头文件<queue>中,front()取队列首元素,用queue<int> s声明
3.STL的优先队列在<queue>中,优先级高的先出,用priority_queue<int>pq来声明,top()表示优先出队列的元素
5.栈、队列、优先队列都用push()表示入,用pop()表示出。
用优先队列实现一个“个位数大的整数优先级反而小”
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-34960-2.html
只是骂它