AKSZ-广度优先搜索1
2024-05-26 17:30:17
发布于:广东
广度优先搜索
图论
节点 - 状态
边 - 操作
隐式图
不明显的图,难以确定状态
https://www.acgo.cn/problemset/8052/info
康拓展开
https://www.luogu.com.cn/problem/P1379
输入 #1
283104765
int v[1009]; // 数字 -> 数组
for(int i = 8; i >= 0; i--)
{
v[i] = t % 10;
t %= 10;
}
int ans = 0;
for(int i = 0; i < 9; i++)
{
int rev = 0; // 找逆序对
for(int j = i + 1; j < 9; j++)
{
rev += v[i] > v[j];
}
}
ans += rev * fc[8 - i];
return ans;
双端队列
deque<int> q;
q.push_front(); // 从前部插入
q.push_back(); // 从后部插入
q.front();
q.pop_front(); // 删除前部
q.pop_back(); // 删除后部
__int128
最大值2127约1038
保存long long相乘
__int128 read()
{
char arr[39];
__int128 res = 0;
scanf("%s", arr);
for(int i = 1; i <= strlen(arr); i++)
{
res *= 10;
res += arr[i] - '0';
}
return res;
}
void print(__int128 num)
{
if(num > 9)
{
print(num / 10);
}
putchar(num % 10 + '0');
}
全部评论 1
康托展开修正一下 是 2*8! 开始 , __int 128 的读入是 scanf("%s",arr+1),或者从 0下标开始
2024-05-29 来自 广东
0
有帮助,赞一个