AcWing 5366. 大小写转换

签到题,可以用stl里面的tolower函数

#include <bits/stdc++.h>
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define db double
#define ull unsigned long long
#define endl '\n'
#define io ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;
const int N = 2e5 + 10;
int t, n;
int a[N], sum[N], b[N]; void solve()
{
string a, b;
cin >> a;
for(int i = 0; i < a.size(); ++ i) a[i] = tolower(a[i]);
cout << a;
} int main()
{
io
// freopen("1.in", "r", stdin);
// cin >> t;
// while(t --)
solve();
return 0;
}

AcWing 5367. 不合群数

最大的不合群数明显是\([a + 1, b]\)内的最大质数,题目上还有提示相邻质数之间不超过300,我们到这枚举如果有质数,枚举300次就能找到。

#include <bits/stdc++.h>
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define db double
#define ull unsigned long long
#define endl '\n'
#define io ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;
const int N = 2e5 + 10;
int t, n;
int a[N], sum[N], b[N], ans;
map<int, int>mp; void solve()
{
int a, b; cin >> a >> b;
for(int i = b; i > a; -- i)
{
bool success = true;
for(int j = 2; j <= a && j * j <= i; ++ j)
{
if(i % j == 0)
{
success = false;
break;
}
}
if(success)
{
cout << i << endl;
return;
}
}
cout << -1 << endl;
} int main()
{
io
// freopen("1.in", "r", stdin);
// cin >> t;
// while(t --)
solve();
return 0;
}

AcWing 5368. 最短距离

两问:

第一问:同类点之间的距离是否都为0

第二问:如果第一问回答是,求出不同类之间的距离

对于第一问显然,只有边权为0的边才有用,同类点之间的边权都为0他们之间的距离才为0,用并查集维护边权为0的点,最后检查如何两个点是同类他们之间的边权不为0说明距离不为0

第二问:我们记录类与类之间的最小边权,因为题目中说了可能有重边,然后跑一遍floyd就行了,跑floyd的时候需要注意一下初始化距离数组,自己到自己也就是d[i][i]=0

#include <bits/stdc++.h>
#define ls p<<1
#define rs p<<1|1
#define PII pair<int, int>
#define ll long long
#define db double
#define ull unsigned long long
#define endl '\n'
#define io ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define INF 0x3f3f3f3f
using namespace std;
const int N = 1e5 + 10;
int t, n, m, q;
int fa[N], d[510][510], id[N]; int find(int x)
{
if(x == fa[x]) return x;
return fa[x] = find(fa[x]);
} bool check()
{
for(int i = 2; i <= n; ++ i)
if(id[i] == id[i - 1] && find(i) != find(i - 1)) return false;
return true;
} void solve()
{
cin >> n >> m >> q;
for(int i = 1; i <= n; ++ i) fa[i] = i;
memset(d, 0x3f, sizeof(d));
for(int i = 1, j = 1; i <= q; ++ i)
{
int cnt; cin >> cnt;
while(cnt --) id[j ++] = i;
}
for(int i = 1; i <= m; ++ i)
{
int x, y, w; cin >> x >> y >> w;
if(!w) fa[find(x)] = find(y);
x = id[x], y = id[y];
d[y][x] = d[x][y] = min(d[x][y], w);
} if(!check())
{
cout << "No" << endl;
return;
} for(int k = 1; k <= q; ++ k)
for(int i = 1; i <= q; ++ i)
for(int j = 1; j <= q; ++ j)
{
d[i][j] = min(d[i][j], d[i][k] + d[k][j]);
if(i == j) d[i][j] = d[j][i] = 0;
} cout << "Yes" << endl;
for(int i = 1; i <= q; ++ i)
{
for(int j = 1; j <= q; ++ j)
{
int dist = d[i][j];
if(dist == INF) cout << -1 << ' ';
else cout << dist << ' '; }
cout << endl;
}
} int main()
{
io
// freopen("1.in", "r", stdin);
// cin >> t;
// while(t --)
solve();
return 0;
}

Acwing第132场周赛的更多相关文章

  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. LeetCode-第 166 场周赛

    LeetCode-第 166 场周赛 1281.subtract-the-product-and-sum-of-digits-of-an-integer 1282.group-the-people-g ...

  5. LeetCode 第 165 场周赛

    LeetCode 第 165 场周赛 5275. 找出井字棋的获胜者 5276. 不浪费原料的汉堡制作方案 5277. 统计全为 1 的正方形子矩阵 5278. 分割回文串 III C 暴力做的,只能 ...

  6. LeetCode--第180场周赛

    LeetCode--第180场周赛 1380. 矩阵中的幸运数 class Solution { public: vector<int> luckyNumbers (vector<v ...

  7. Leetcode第 217 场周赛(思维量比较大)

    Leetcode第 217 场周赛 比赛链接:点这里 做完前两题我就知道今天的竞赛我已经结束了 这场比赛思维量还是比较大的. 1673. 找出最具竞争力的子序列 题目 给你一个整数数组 nums 和一 ...

  8. 【AcWing】第 62 场周赛 【2022.07.30】

    AcWing 4500. 三个元素 题目描述 给定一个长度为 \(n\) 的数组 \(r\_1,r\_2,-,r\_n\). 请你找到其中的三个元素 \(r\_a,r\_b,r\_c\),使得 \(r ...

  9. Leetcode 第133场周赛解题报告

    今天参加了leetcode的周赛,算法比赛,要求速度比较快.有思路就立马启动,不会纠结是否有更好的方法或代码可读性.只要在算法复杂度数量级内,基本上是怎么实现快速就怎么来了. 比赛时先看的第二题,一看 ...

  10. 第二场周赛(递归递推个人Rank赛)——题解

    很高兴给大家出题,本次难度低于上一场,新生的六个题都可以直接裸递归式或者裸递推式解决,对于老生的汉诺塔3,需要找出一般式,后两题分别为裸ST算法(或线段树)/线性DP. 正确的难度顺序为 种花 角谷定 ...

随机推荐

  1. windowsbat删除命令

    widnwosbat命令 DEL /F /A /Q \?%1 用于删除指定路径下的文件,参数含义如下: /F: Force delete,即强制删除: /A: 用于指定文件属性,A代表存档,D代表目录 ...

  2. 从零开始匹配vim(2)——快捷键绑定

    如果说 vim有什么最吸引人,我想vim允许你自由的定义各种快捷键算是一个原因吧.你可以通过绑定各种快捷键来使经常使用的功能更加便利.通俗的讲,快捷键映射就是我按下某个键,我想让vim将它当成另一个键 ...

  3. OCR文字检测与识别系统:融合文字检测、文字识别和方向分类器的综合解决方案

    1. OCR文字检测与识别系统:融合文字检测.文字识别和方向分类器的综合解决方案 前两章主要介绍了DBNet文字检测算法以及CRNN文字识别算法.然而对于我们实际场景中的一张图像,想要单独基于文字检测 ...

  4. C/C++ 内存遍历与KMP特征搜索

    内存遍历,枚举数据,实现特征码扫描. 内存遍历: 每次读入4096字节,然后每16个字符换一次行,遍历内存 0x00401000 - 0x7FFFFFFF. #include <stdio.h& ...

  5. Windows上部署Python flask项目

    最近使用Python flask做了一个项目要部署,网上一大堆教程没有一个完整,最后看了多个教程才配置完成,下面根据自己的环境整理一下做个备忘录 环境: Windows 10 apache httpd ...

  6. P2216 [HAOI2007] 理想的正方形 题解

    题目链接:理想的正方形 比较明显的,我们可以用二维 ST 表解决,具体的二维 ST 表的实现,只需要知道一点: 对于 \(st[i][j][t]=max(i \sim i+2^t,j \sim j+2 ...

  7. 19c ADG Switchover 切换测试

    背景: 环境未配置DG Broker,手工切换ADG,19c也要比11g时代的切换更简单. 使用自己的测试环境,具体可参见: 单实例Primary快速搭建Standby RAC参考手册(19.16 A ...

  8. 17.1 使用内存映射文件--《Windows核心编程》

    Windows 提供了以下三种机制来对内存进行操控虚拟内存:最适合用来管理大量对象数组或者大型数据结构内存映射文件:最适合用来管理大型数据流(通常是文件),以及在同一机器上运行的多个进程之间的共享数据 ...

  9. Java-将Oracle中某个表的数据导出成数据文件

    在做数据开发或者ETL工作中,经常会遇到需要在客户端将Oracle数据库中的某些表的数据导出,提供给其他人员使用的情况.      下面介绍我之前实施的一种方法:(该方法不是最好的办法,但是可以勉强使 ...

  10. Eclipse安装配置、卸载教程(Windows版)

    Eclipse是一个开放源代码的集成开发环境(IDE),最初由IBM公司开发,现在由Eclipse基金会负责维护.它是一个跨平台的工具,可以用于开发多种编程语言,如Java.C/C++.Python. ...