比赛链接:Here

AcWing 3694. A还是B

签到题

void solve() {
int n; string s;
cin >> n >> s;
int t = count(s.begin(), s.end(), 'A');
if (t * 2 == n)cout << "T";
else if (t * 2 < n)cout << "B";
else cout << "A";
}

AcWing 3695. 扩充序列

思维构造题

这题目本身并不难,只不过出得有 一些 “委婉”罢了。

先来研究一下题目,每次“扩充”都会将序列复制一次,然后在中间会插入一个还未使用过的最小正整数。

其实“还未使用过的 最小 正整数”,其实不过就是添加原数列中最大的值+1。

再看,扩充 \(n\) 次,就会将原序列变为 \(2^n + 1\) 。

那么对于 \(k\) 来说,只需判断小于 \(2^x\) 即可

输出 \(x + 1\)

注意点:long long

void solve() {
ll n, k; cin >> n >> k;
int cnt = 1;
while (!(k & 1))k >>= 1, cnt++;
cout << cnt << "\n";
}

AcWing 3696. 构造有向无环图

对图进行拓扑排序,其中我们只加有向边,不考虑无向边。

若无法拓扑排序,则说明有向边已经构成了环,输出 NO。

否则,在拓扑排序的时候,对于所有点,我们可以得到一个时间戳,而对于所有无向边,将其方向定位从时间戳小的连向时间戳大的边即可。

时间复杂度:\(\mathcal{O}(n + m)\)

typedef pair<int, int> E;
const int N = 200005;
int n, m;
int d[N], p[N];
vector<int> g[N];
bool topo() {
static int q[N], hh, tt, s;
hh = tt = 0, s = 0;
for (int x = 1; x <= n; ++x)
if (!d[x]) q[tt++] = x;
while (hh != tt) {
int t = q[hh++];
++s, p[t] = s;
for (int i = 0; i < g[t].size(); ++i) {
int v = g[t][i];
if (!--d[v]) q[tt++] = v;
}
}
return s == n;
}
void solve() {
cin >> n >> m;
memset(d + 1, 0, n << 2);
memset(p + 1, 0, n << 2);
for (int i = 1; i <= n; ++i) g[i].clear();
vector<E> res;
for (int i = 0; i < m; ++i) {
int a, b, t;
cin >> t >> a >> b;
res.push_back({a, b});
if (t) g[a].push_back(b), ++d[b];
}
if (topo()) {
puts("YES");
for (auto [a, b] : res) {
if (p[a] > p[b]) swap(a, b);
printf("%d %d\n", a, b);
}
} else puts("NO"); }

AcWing第四场周赛的更多相关文章

  1. AcWing第85场周赛

    这场周赛是手速局hh 死或生 某国正在以投票的方式决定 2 名死刑犯(编号 1∼2)的生死. 共有 n 组人员(编号 1∼n)参与投票,每组 10 人. 每组成员只参与一名死刑犯的投票,其中第 i 组 ...

  2. AcWing 第11场周赛题解

    计算abc 首先 \(0<=a<=b<=c\) 会随机给出 \(a+b,a+c,b+c,a+b+c\)的值 因为\(a,b,c\)都为正整数,所以\(a+b+c\)一定为最大值 然后 ...

  3. AcWing第78场周赛

    今天想起来了,就补一下吧~ 第一题 商品分类 货架中摆放着 n 件商品,每件商品都有两个属性:名称和产地. 当且仅当两件商品的名称和产地都相同时,两件商品才视为同一种商品. 请你统计,货架中一共有多少 ...

  4. 2018 HDU多校第四场赛后补题

    2018 HDU多校第四场赛后补题 自己学校出的毒瘤场..吃枣药丸 hdu中的题号是6332 - 6343. K. Expression in Memories 题意: 判断一个简化版的算术表达式是否 ...

  5. 牛客网NOIP赛前集训营-提高组(第四场)游记

    牛客网NOIP赛前集训营-提高组(第四场)游记 动态点分治 题目大意: \(T(t\le10000)\)组询问,求\([l,r]\)中\(k(l,r,k<2^{63})\)的非负整数次幂的数的个 ...

  6. NOI.AC NOIP模拟赛 第四场 补记

    NOI.AC NOIP模拟赛 第四场 补记 子图 题目大意: 一张\(n(n\le5\times10^5)\)个点,\(m(m\le5\times10^5)\)条边的无向图.删去第\(i\)条边需要\ ...

  7. CTF-i春秋网鼎杯第四场部分writeup

    CTF-i春秋网鼎杯第四场部分writeup 因为我们组的比赛是在第四场,所以前两次都是群里扔过来几道题然后做,也不知道什么原因第三场的题目没人发,所以就没做,昨天打了第四场,简直是被虐着打. she ...

  8. 牛客网暑期ACM多校训练营(第四场):A Ternary String(欧拉降幂)

    链接:牛客网暑期ACM多校训练营(第四场):A Ternary String 题意:给出一段数列 s,只包含 0.1.2 三种数.每秒在每个 2 后面会插入一个 1 ,每个 1 后面会插入一个 0,之 ...

  9. 牛客网NOIP赛前集训营-提高组(第四场)B区间

    牛客网NOIP赛前集训营-提高组(第四场)B区间 题目描述 给出一个序列$ a_1  \dots   a_n$. 定义一个区间 \([l,r]\) 是好的,当且仅当这个区间中存在一个 \(i\),使得 ...

  10. 牛客网NOIP赛前集训营-提高组(第四场)B题 区间

    牛客网NOIP赛前集训营-提高组(第四场) 题目描述 给出一个序列 a1, ..., an. 定义一个区间 [l,r] 是好的,当且仅当这个区间中存在一个 i,使得 ai 恰好等于 al, al+1, ...

随机推荐

  1. 聊聊分布式 SQL 数据库Doris(六)

    负载均衡 此处的负载均衡指的是FE层的负载均衡. 当部署多个 FE 节点时,用户可以在多个 FE 之上部署负载均衡层来实现 Doris 的高可用.官方文档描述: 负载均衡 . 实现方式 实现方式有多种 ...

  2. [Codechef REBXOR]Nikitosh and xor (Trie,异或)

    题目传送门 分析:首次考虑暴力枚举 \(l_{1},r_{1},l_{2},r_{2}\),配合前缀和时间复杂度 \(O(N^{4})\),需要想办法优化.对于这种两段区间不重合的,我们考虑枚举两段区 ...

  3. 七天.NET 8操作SQLite入门到实战 - 第五天引入SQLite-net ORM并封装常用方法(SQLiteHelper)

    前言 上一章节我们搭建好了EasySQLite的前后端框架,今天我们的主要任务是在后端框架中引入SQLite-net ORM并封装常用方法(SQLiteHelper). 七天.NET 8操作SQLit ...

  4. Django学习(二) 之 模板的使用

    写在前面 昨晚应该是睡的最好一天吧,最近一个月睡眠好差,睡不着不说,而且半夜总醒,搞的第二天就会超没精神. 昨天下午去姐姐家,小外甥直接进屋就问我说: 老舅,你都很长时间没来啦,**(前女友)怎么哪去 ...

  5. 记录一下Stream流的一个坑

    List<String> list = new ArrayList<>(); boolean a = list.stream().anyMatch("a": ...

  6. Kafka核心逻辑介绍

    1.概念 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica)分布式消息系统(kafka2.8.0版本之后接触了对zk的依赖,使用自己 ...

  7. C++ Qt开发:Charts绘制各类图表详解

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍TreeWid ...

  8. Windows上安装jenkins

    官网下载jenkins https://www.jenkins.io/zh/download/ 选择Windows版本下载,安装 注意,需要java11,17或21才能安装 java下载地址  htt ...

  9. Ef Core花里胡哨系列(10) 动态起来的 DbContext

    Ef Core花里胡哨系列(10) 动态起来的 DbContext 我们知道,DbContext有两种托管方式,一种是AddDbContext和AddDbContextFactory,但是呢他们各有优 ...

  10. Asp .Net Core系列:基于MySQL的DBHelper帮助类和SQL Server的DBHelper帮助类

    目录 MySQLDBHelper MSSQLDBHelper MySQLDBHelper app.config中添加配置 <connectionStrings> <add name= ...