c++获取数组中最大值
int a[n];
*max_element(a,a+n);
保留小数
printf("%.2f"%90.5)->90.50(不适用于保留1位小数)
小于 1 分钟
int a[n];
*max_element(a,a+n);
printf("%.2f"%90.5)->90.50(不适用于保留1位小数)
Python就是要多实践,不懂就举个例子试试,多试试,才能懂这些函数是干什么的
print("%0.2f"%90.5)
注意:有关取模运算,n%mod—>若n>abs(mod)则n%mod=0;
//加法取模
(a+b)%mod=(a%mod+b%mod)%mod;
//乘法取模
(a*b)%mod=(a%mod*b%mod)%mod;
//减法取模
(a-b)%mod=(a%mod-b%mod+mod)%mod;
//除法取模(特殊)
//规则1:当a能整除b时
(a/b)%mod=a%(b*mod)/b;
//规则2:无论a是否可以整除b,当b和mod互质(b和mod很少不互质) or a不能整除b
(a/b)%mod=a*qp(b,mod-2,mod)%mod;
//stack
stack<int> s;
stack< int, vector<int> > st; //覆盖基础容器类型,使用vector实现st
s.empty(); //判断stack是否为空,为空返回true,否则返回false
s.size(); //返回stack中元素的个数
s.pop(); //删除栈顶元素,但不返回其值
s.top(); //返回栈顶元素的值,但不删除此元素
s.push(item); //在栈顶压入新元素item
//queue
queue<int> q;
q.empty(); //判断队列是否为空
q.size(); //返回队列长度
q.push(item); //队尾压入一个新元素
q.front(); //返回队首元素的值,但不删除该元素
q.back(); //返回队尾元素的值,但不删除该元素
q.top(); //返回具有最高优先级的元素值,但不删除该元素
质数:又称素数;除1和他本身外,不被其他自然数整除,否则为合数。
找质数最基础的方法:
bool isprime(int n)
{
if(n<2)return false;
for(int i=2;i<n;i++)
{
if(n%i==0)return false;
}
return true;
}
提示
如果方便可以用万能头:#include<bits/stdc++.h>, 但竞赛中,用万能头会比普通调用更耗时
数学上规定多边形的对角线是不相邻的两个顶点之间的线段。求正n边形对角线的数量。
公式:m * (m - 3) / 2
罗少有一张长方形的纸,他每次都会把这张纸剪成面积相同的两半(这两半也都是长方形),然后丢掉其中的一半。