A

link



把最后三位取成数字,判断是否小于\(349\),大于\(1\),不等于\(316\)。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

char s[10];
int ans; signed main(){ cin >> s+1;
ans += s[4]-48;
ans *= 10;
ans += s[5]-48;
ans *= 10;
ans += s[6]-48; if(ans >= 1&&ans <= 349
&&ans != 316) cout << "Yes";
else cout << "No"; return 0; }

B

link



用一个数组存每个牙是不是还在,模拟即可。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int n,q;
int ans;
int a[1005]; signed main(){ cin >> n >> q; while(q--){
int x;
cin >> x;
if(a[x]) a[x] = 0,ans--;
else a[x] = 1,ans++;
} cout << n-ans; return 0; }

C

link



由于没有要求最小次数,第\(i\)次只需要把\(i\)这个数字换到\(i\)这个位置,用一个数组存\(i\)这个数字当前在哪个位置。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int n;
int a[200005];
int ans;
int l[200005],r[200005];
int mp[200005]; signed main(){ cin >> n;
for(int i = 1;i <= n;++ i)
cin >> a[i],mp[a[i]] = i; for(int i = 1;i <= n;++ i){
if(a[i] != i){
ans++;
int t = mp[i];
swap(mp[a[i]],mp[i]);
swap(a[i],a[t]);
l[ans] = i,r[ans] = t;
}
} cout << ans << endl;
for(int i = 1;i <= ans;++ i)
cout << l[i] << " " << r[i] << endl; return 0; }

D

link



首先有一个特点,如果把人看成点,关系看成边,那么每一个连通块任意两点间都可以连边,有\(\frac{n(n-1)}{2}\)条边(\(n\)为点数)。

求出有多少联通块以及每个联通块中点的个数即可,把每个联通块可以连的边数加起来,减去现有的边数即可。

点击查看代码
#include<bits/stdc++.h>

#define int long long

using namespace std;

int n,m;
vector<int> ed[200005];
int cn,ans;
bool vs[200005]; void dfs(int x){
cn++;
for(int i = 0;i < ed[x].size();++ i){
int j = ed[x][i];
if(!vs[j]) vs[j] = 1,dfs(j);
}
} signed main(){ cin >> n >> m;
for(int i = 1;i <= m;++ i){
int x,y;
cin >> x >> y;
ed[x].push_back(y);
ed[y].push_back(x);
} for(int i = 1;i <= n;++ i){
if(vs[i]) continue;
cn = 0;
vs[i] = 1;
dfs(i);
ans += cn*(cn-1)/2;
} ans -= m;
cout << ans; return 0; }

随机推荐

  1. Vue cli之传递数据

    1.父组件的数据传递给子组件 // 父组件 <Menu title="来自Home的数据" :clickNum="num"></Menu> ...

  2. 🔥 FolkMQ v1.5.1 发布(“新式” 国产消息中间件)

    FolkMQ 是个"新式"的消息中间件.强调:"小而巧"."简而强". 功能简表 角色 功能 生产者(客户端) 发布普通消息.Qos0消息. ...

  3. 鸿蒙极速入门(五)-路由管理(Router)

    页面路由指在应用程序中实现不同页面之间的跳转和数据传递.HarmonyOS提供了Router模块,通过不同的url地址,可以方便地进行页面路由,轻松地访问不同的页面. 一.基础使用 Router模块提 ...

  4. makedown快速入门

    Makedown学习 Makedown 作为一个强大文本编辑语言,学习并熟悉应用是写好一篇优秀博客的基础 那么接下来我将介绍makedown语言最常用的几个语法 标题 +"space&quo ...

  5. Mysql 创建索引语句

    mysql有哪些索引 index 普通索引 alter table table_name add index index_name(column) 最基本的索引,没有任何限制 primary key ...

  6. vs code 中开发 .net5 mvc

    asp.net core mvc ------------ 安装vscode-solution-explorer,C# 2个扩展.遇到yes就点yes. 新建一个文件夹:D:\repos\Net5Mv ...

  7. Flashcat与出行科技企业一起实践多云可观测

    当前架构 某出行科技企业从单个公有云往多云转型,依托于国内领先的公有云提供商,采用多云架构,在可用性.弹性.成本.供应商依赖方面,拥有了显著的优势. 相应的,多云架构也给技术团队带来了一定的复杂度和技 ...

  8. Kubernetes OOM 和 CPU Throttling 问题

    介绍 使用 Kubernetes 时,内存不足(OOM)错误和 CPU 限制(Throttling)是云应用程序中资源处理的主要难题.为什么呢? 云应用程序中的 CPU 和内存要求变得越来越重要,因为 ...

  9. k8s数据持久化

    前面的学习,我们已经基本完成了在k8s中部署一个web服务,运行pod.创建service.创建ingress对外提供域名的七层代理. 下一个环境就得去关注应用部署后的数据存储问题,容器化如何管理,k ...

  10. 基于 Swagger 增强 UI FytApi.MUI

    FytApi.MUI 介绍 基于swagger的轻量级,注入化的api-ui组件 支持netcore 3.1/5.0/6.0 特点 零浸入.轻量.简单.好看.好用 可配置权限认证以及Header,支持 ...