Python牛客acm模式io题目答案
牛客竞赛_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ;
1
import sys
for l in sys.stdin:
a, b = l.split()
print(int(a) + int(b))
2
import sys
n = input()
for l in sys.stdin:
a, b = l.split()
print(int(a) + int(b))
3
import sys
for l in sys.stdin:
a, b = l.split()
if a != '0' or b != '0':
print(int(a) + int(b)) ...
Gcc工具链常见参数详解
写在前面
单文件编译
#include <cstdio>
#define out(x) printf(x)
int main(int argc, char *argv[]) {
const int a [[maybe_unused]] = 7; // stdc++17
out("hello cpp\n");
return 0;
}
预处理-E
g++ -E aa.cpp -o aa.i
# cpp aa.cpp > aa.i # 或者用 cpp 预处理器 (The C Preprocessor)
aa.i的部分结果:
# 4 "aa.cpp"
int main(int argc, char *argv[])...
关于stl迭代器前置++和后置++性能的汇编层面分析
源码
/opt/homebrew/Cellar/llvm/16.0.4/include/c++/v1/__iterator/wrap_iter.h
// clang llvm
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 __wrap_iter& operator++()
_NOEXCEPT {
_LIBCPP_DEBUG_ASSERT(__get_const_db()->__dereferenceable(this),
"Attempted to increment a non-incrementable iterator");
...
C++lambda一些有用的操作总结
写在前面
lambda 简介
这里我最喜欢的一个功能就是参数捕获列表, 可以很大程度上减少参数的重复传递, 一个 & 足矣(当然也不能滥用)
参数捕获
常见操作
指定比较规则(sort, priority_queue)
指定其他规则
简短函数的封装
递归支持
用递归版本的 lambda 主要是方便参数的捕获.
试想回溯法中参数一多了, 写成独立的两个函数就要传入很多并不是递归变量的变量, 没有必要, 不过写递归lambda 的坏处就是不如两个函数那样简洁明了.
这里有两种比较常见的方法, 第一种就是每次刷题都用的function类模板(函数对象)
下面的例子是经典的反转链表递归写法(复习一下)
function<ListN...
并查集相关题目总结
并查集相关题目
简介
并查集(Union-Find-Set, UFS) 主要有两个功能:
将两个元素合并到一个集合中
判断两个元素在不在一个集合中
模板
路径压缩
// init
int fa[N];
for (int i{}; i < N; ++i) fa[i] = i;
// Find
function<int(int)> Find = [&](int u) {
return u == fa[u] ? u : fa[u] = Find(fa[u]);
};
// check
auto isSame = [&](int u, int v) { return Find(u) == Find(v); };
// jo...
共计 492 篇文章,62 页。
您是Zorch的第 个小伙伴
Hits