牛客周赛 Round 8
牛客周赛 Round 8
A-小美的排列询问_牛客周赛 Round 8 (nowcoder.com)
枚举即可
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N;
cin >> N;
vector<int> a(N);
for(auto &i : a) cin >>i;
int x,y;
cin >> x >> y;
for(int i = 1;i < N - 1;i ++){
if(a[i] == x){
if(a[i - 1] == y || a[i + 1] == y){
cout << "Yes\n";
return 0;
}
}else if(a[i] == y){
if(a[i - 1] == x || a[i + 1] == x){
cout << "Yes\n";
return 0;
}
}
}
cout << "No\n";
return 0;
}
B-小美走公路_牛客周赛 Round 8 (nowcoder.com)
因为公路是环形的,所以我们可以把公路往后再展开\(N\)个站,然后用一个前缀和和计算两两车站之间的距离,如果是要往前走,那就是用\(sum[y] - sum[x]\),往后走就是\(sum[x+N] - sum[y]\),就可以想象成从\(y\)这个点走过一个环形到达\(x\)站,因为这里都是往前计算的前缀和,所以计算的时候我们要把大的站放前面,小的站放后面
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N;
cin >> N;
vector<int> a(N);
for (int i = 0; i < N; i ++)
cin >> a[i];
for (int i = 0; i < N; i ++) {
a.push_back(a[i]);
}
int x, y;
cin >> x >> y;
x--, y--;
if(x > y) swap(y,x);
vector<i64> sum(a.size());
for (int i = 1; i < a.size(); i++)
sum[i] = sum[i - 1] + a[i - 1];
cout << min(sum[y] - sum[x], sum[x + N] - sum[y]) << '\n';
return 0;
}
C-小美的排列构造_牛客周赛 Round 8 (nowcoder.com)
我是直接造了几组数据然后猜了个结论,比如当\(n=6\)时,可以构造一个\(1,6,2,5,3,4\)这样就可以得到\(7,8,7,8,7\),又比如当\(n=5\)时,可以构造\(1,5,2,4,3\),可以得到\(6,7,6,7\),可以肯定的是权值最小都可以得到\(1\),再进一步观察可以发现其实就是将\(1 \sim n\)分成两半,然后后面大的数倒序插入前面
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin >> n;
int m = n / 2;
vector<int> b;
while(m){
b.push_back(n);
n--;
m--;
}
for(int i = 1;i <= n;i ++){
cout << i << ' ';
cout << b[i - 1] << ' ';
}
return 0;
}
D-小美的树上染色_牛客周赛 Round 8 (nowcoder.com)
\(dfs\)每次去搜节点的子孙是否能优先被染红
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin >> n ;
vector<int> a(n);
for (auto &i : a) cin >> i;
vector<vector<int>> g(n);
for (int i = 1, x, y; i < n; i ++) {
cin >> x >> y;
x--, y--;
g[x].push_back(y);
g[y].push_back(x);
}
int ans = 0;
vector<bool> v(n, false);
auto dfs = [&](auto self, int x, int u) -> void{
for (auto i : g[x]) {
if (i == u) continue;
self(self, i, x);
int res = a[i] * a[x];
int d = sqrt(res);
if (!v[i] && !v[x] && d * d == res) {
v[i] = v[x] = true;
ans += 2;
}
}
};
dfs(dfs, 0, -1);
cout << ans << '\n';
return 0;
}
牛客周赛 Round 8的更多相关文章
- 牛客周赛11TG B-弹钢琴
链接:https://ac.nowcoder.com/acm/contest/941/B来源:牛客网 题目描述 春希想听和纱弹钢琴! 为了阻止异变的发生,Pi将钢琴魔改了 钢琴上有 N 个键,每个键有 ...
- 牛客OI周赛9-提高组题目记录
牛客OI周赛9-提高组题目记录 昨天晚上做了这一套比赛,觉得题目质量挺高,而且有一些非常有趣而且非常清奇的脑回路在里边,于是记录在此. T1: 扫雷 题目链接 设 \(f_i\) 表示扫到第 \(i\ ...
- 牛客OI周赛8-提高组A-用水填坑
牛客OI周赛8-提高组A-用水填坑 题目 链接: https://ac.nowcoder.com/acm/contest/403/A 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制: ...
- 牛客假日团队赛5 F 随机数 BZOJ 1662: [Usaco2006 Nov]Round Numbers 圆环数 (dfs记忆化搜索的数位DP)
链接:https://ac.nowcoder.com/acm/contest/984/F 来源:牛客网 随机数 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...
- 牛客OI周赛7-提高组 A 小睿睿的等式
链接:https://ac.nowcoder.com/acm/contest/371/A来源:牛客网 小睿睿在游戏开始时有n根火柴棒,他想知道能摆成形如“A+B=n”的等式且使用的火柴棒数也恰好等于n ...
- 牛客OI周赛7-提高组 B小睿睿的询问(ST打表)
链接:https://ac.nowcoder.com/acm/contest/371/B来源:牛客网 小睿睿的n个妹纸排成一排,每个妹纸有一个颜值val[i].有m个询问,对于每一个询问,小睿睿想知道 ...
- 牛客OI周赛7-普及组 解题报告
出题人好评. 评测机差评. A 救救喵咪 二位偏序.如果数据范围大的话直接树状数组,不过才1000就\(O(n^2)\)暴力就ok了. #include <bits/stdc++.h> s ...
- 牛客OI周赛2-提高组
A.游戏 链接:https://www.nowcoder.com/acm/contest/210/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...
- 牛客OI周赛10-普及组-A眼花缭乱的街市-(加速+二分)
https://ac.nowcoder.com/acm/contest/901/A 很简单的一道题,全场只有20+AC,卡时间.新学了cin加速语法和数组二分查找的函数调用. 知道有个读写挂,可以加速 ...
- 牛客OI周赛11-普及组 B Game with numbers (数学,预处理真因子)
链接:https://ac.nowcoder.com/acm/contest/942/B 来源:牛客网 Game with numbers 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C+ ...
随机推荐
- 你不知道的 CSS 之包含块
你不知道的 CSS 之包含块 一说到 CSS 盒模型,这是很多小伙伴耳熟能详的知识,甚至有的小伙伴还能说出 border-box 和 content-box 这两种盒模型的区别. 但是一说到 CSS ...
- recastnavigation.Sample_TempObstacles代码注解 - rcBuildHeightfieldLayers
烘培代码在 rcBuildHeightfieldLayers 本质上是为每个tile生成高度上的不同layer 算法的关键是三层循环: for z 轴循环 for x 轴循环 for 高度span 循 ...
- STM32 CubeMX 学习:000-搭建开发环境
背景 了解了 STM32 标准库以后,为了紧跟发展的潮流,我们以 CubeMx为基础 开始进行 Hal(Hardware Abstract Layer, 硬件抽象层)库的学习. CubeMx 是一个 ...
- 川普真会说中文?连嘴型都同步,VideoReTalking AI数字人下载介绍
你能想到这种画面吗?霉霉在节目中用普通话接受采访,特朗普在老家用中文脱口秀,蔡明老师操着一口流利的英文调侃潘长江老师.. 这听起来似乎很魔幻,可如今全部由VideoReTalking实现了 你只需要传 ...
- 【Autoware】Autoware安装教程
此篇主要是从自己的csdn copy 在博客园上备份一下哈~ 前提:大家需要换源[软件源和pip源]:git clone的时候走博主给的Gitee的链接吧 不然得等个十万年... 如果想看最终是啥样的 ...
- windows 安装fvm 安装使用FVM,管理多版本flutter
背景:win10 1,先用clash代理powershell命令,解决网络问题 2.使用dart 安装FVM dart pub global activate fvm 3.安装后检查系统环境变量 3. ...
- 《探索Python Requests中的代理应用与实践》
requests加代理 高匿API代理 此处使用的小象代理:1元100个,便宜,可以购买尝试加下代理 存活期1到2分钟 import time import requests from lxml im ...
- 全网最适合入门的面向对象编程教程:08 类和对象的Python实现-@property装饰器:把方法包装成属性
全网最适合入门的面向对象编程教程:08 类和对象的 Python 实现-@property 装饰器:把方法包装成属性 摘要: 本文主要对@property 装饰器的基本定义.使用场景和使用方法进行了介 ...
- 在windows双系统中,nginx配置虚拟域名
比如在ubuntu系统中,nginx配置了域名www.abc.com, 那么需要在终端 sudo vim /etc/hosts文件中配置域名,如下: 127.0.0.1 www.abc.com 即可访 ...
- CF1359A 题解
洛谷链接&CF 链接 题目简述 共有 \(T\) 组数据. 对于每组数据给出 \(n,m,k\),表示 \(k\) 名玩家打牌,共 \(n\) 张牌,\(m\) 张王,保证 \(k \mid ...