NOJ C++ G4:func 记录

  • 这季的题目有点过于简单……

4.1

image-20230418160605421

1
2
3
4
5
6
7
8
9
//以下为经典小到大的排序
template <typename T>
void sort(T x, T y, T z){
if (x > y) swap(x, y);
if (x > z) swap(x, z);
if (y > z) swap(y, z);
cout << x << " " << y << " " << z << endl;
}
//字符输入时无需空格,连续输入,空格会被当作一个字符

4.4

image-20230418161104237

  • int强制类型转换:自动舍去小数部分,即正数向下取整,负数向上取整。

4.5

循环移位

image-20230418160751894

1
2
3
4
5
6
7
8
9
10
11
12
13
14
int move(int value, int n) {
int result;
if (n < 0) {
n = -n;
result = (value<<n)|(value>>(32-n));
}
else if (n > 0) {
result = (value>>n)|(value<<(32-n));//右移n位,按位或,左移32-n位
}
else {
result = value;
}
return result;
}