Codeforces Round #692 (Div. 2, based on Technocup 2021 Elimination Round 3)
A.In-game Chat
题目:就是从后面数连着的‘('的个数是不是严格比剩下的字符多
思路:水题,直接从后往前遍历即可
代码:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int main(){
char s[1500];
int t;
scanf("%d",&t);
while(t--){
// scanf("%s",&s);
int n;
int sum=0,flag=0;
scanf("%d",&n);
scanf("%s",&s);
for(int i=n-1;i>=0;i--){
if(s[i]==')'&&flag==0){
sum++;
}else{
flag=1;
}
}
if(sum>n-sum){
printf("Yes\n");
}else{
printf("No\n");
}
}
}
B.Fair Numbers
题目:一个数是公平的,当这个数可以整除它的每一位非零数。问给定一个数n,找到最小的数x(n<=x)是公平的
思路:暴力模拟就行,直接判断每个数是不是公平的即可(因为1-9的最小公倍数是2520,很小)
这个题当时看到这么多交的可能是暴力,写完以后发现最坑的地方是%0,当0是除数的情况
代码:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int main(){
int t;
scanf("%d",&t);
while(t--){
long long int num;
int a[150];
scanf("%lld",&num);
for(long long int i=num;;i++){
long long int n=i;
int flag=0; while(n!=0){
int t=(n%10);
if(t==0){
n/=10;
continue;
}
if(i%t!=0){
flag=1;
break;
} //printf("%lld\n",i);
n/=10; }
if(flag==0){
printf("%lld\n",i);
break;
}
}
}
}
C.Peaceful Rooks
题目:一个二维平面(n×n),在平面上有m个点。在进行一次操作时,可以选择其中的一个点进行平行或者垂直移动,并且移动后这m个点的横纵坐标两两不相等,问为使这m个点都在主对角线上(坐标的横纵坐标相等)所需要的最小的移动次数是多少
思路:最原始的平移方法就是通过移动直接平移或者垂直移动到所在位置的主对角线上,通过把二维平面转换为图,然后如果存在环的话,就是这些点不能够通过上述最简单的移动方式达到,因为他们相互限制,这样的话就需要多加一步,随便一个点移除这个状态。
这个题就要记住一个是找根和并查集,再就是二维平面转换为图的问题。类似的问题还有小孩子们分巧克力的问题,x和y是某个小孩子最喜欢的巧克力,然后每个小孩子分配到自己喜欢的巧克力最少需要多少步
代码:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
const int maxx=1e5+10;
int parent[maxx];
int findd(int x){
if(parent[x]==x){
return x;
}
return parent[x]=findd(parent[x]);
}
int main(){
int t;
scanf("%d",&t);
while(t--){
int n,m;
scanf("%d %d",&n,&m);
//int parent[maxx];
for(int i=1;i<=n;i++){
parent[i]=i;
}
int sum=0;
for(int i=0;i<m;i++){
int x,y;
scanf("%d %d",&x,&y);
if(x==y){
continue;
}
sum++;
int fx=findd(x),fy=findd(y);
if(fx==fy){//有环,并且自己死锁的那种情况已经排除
sum++;
}else{
parent[x]=fy;
}
}
printf("%d\n",sum);
}
}
Codeforces Round #692 (Div. 2, based on Technocup 2021 Elimination Round 3)的更多相关文章
- Codeforces Round #692 (Div. 2, based on Technocup 2021 Elimination Round 3) C. Peaceful Rooks (思维,dsu找环)
题意:一个棋盘上有一些"车",现在要让这些"车"跑到左倾斜的对角线上,每次可以移动一个棋子,但是棋盘的任意时刻都不能出现一个"车"能吃另一个 ...
- Codeforces Round #679 (Div. 2, based on Technocup 2021 Elimination Round 1)
考场上只做出来四道,第二天一早就写出来了E,蛮绝望的. A Finding Sasuke 水构造 #include <cstdio> #include <algorithm> ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) D. XOR-gun (二进制,异或,前缀和)
题意:给你一组非递减的数,你可以对两个连续的数进行异或,使其合并为一个数,问最少操作多少次使得这组数不满足非递减. 题解:首先,给出的这组数是非递减的,我们考虑二进制,对于三个连续的非递减的最高位相同 ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) C. Bouncing Ball (后缀和,枚举)
题意:有一长度为\(n\)的平台,平台有的位置有木桩,可以使小球弹起来,小球必须从第\(p\)个位置开始,而且每次都会向右弹\(k\)个单位,然后有的位置是没有木桩的,你可以在这些的空的位置放一个木桩 ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) B. Repainting Street (枚举)
题意:有\(n\)栋房子,每栋房子都有自己的颜色\(c_i\),你每次可以对连续的长度为\(k\)的区间改变任何房子的颜色,问最少多少次可以使得所有房子颜色相同. 题解:因为只有\(100\)中颜色, ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2) A. Prison Break
题意:有一张\(n\)x\(m\)的图,图中每个点都关押着罪犯,在坐标\((r,c)\)处有一个出口,每名罪犯每秒可以可以像上下最有移动一个单位或者不动,问所有罪犯能够逃离监狱的最少时间. 题解:直接 ...
- Codeforces Round #687 (Div. 2, based on Technocup 2021 Elimination Round 2)
A. Prison Break 题意:就是在一个n*m的矩阵中,以(1,1)为起点(n,m)为终点,每个点以每个单位1s的速度移动,问总共至少需要多少秒,所有的矩阵点就能够全部移动到(r,c)中 思路 ...
- Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2)
Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2) #include <bits/stdc++ ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2)
A - Forgetting Things 题意:给 \(a,b\) 两个数字的开头数字(1~9),求使得等式 \(a=b-1\) 成立的一组 \(a,b\) ,无解输出-1. 题解:很显然只有 \( ...
随机推荐
- PTA 二叉树的层次遍历
6-6 二叉树的层次遍历 (6 分) 本题要求实现给定的二叉树的层次遍历. 函数接口定义: void Levelorder(BiTree T); T是二叉树树根指针,Levelorder函数输出给 ...
- OpenGL 绘制你的 github skyline 模型
前言 好久没更新博客了,上一篇文章还是在去年6月份,乍一看居然快要过去一年了,不时还能看到粉丝数和排名在涨,可是却一直没有内容更新,怪不好意思的- -(主要是一直没想好要写些什么,中间也有过一些想法, ...
- 使用 Kubernetes 扩展专用游戏服务器
系列 探索使用 Kubernetes 扩展专用游戏服务器:第 1 部分-容器化和部署 探索使用 Kubernetes 扩展专用游戏服务器:第 2 部分-管理 CPU 和内存 探索使用 Kubernet ...
- 原来Java的发家史是这么回事
java的诞生: 1991 年Sun公司成立了一个计算机开发小组,由James Gosling等人开发一款希望用于控制嵌入在有线电视交换盒.PDA等的微处理器的计算机语言,本来他们想直接扩展C++,后 ...
- 系统编程-网络-tcp客户端服务器编程模型(续)、连接断开、获取连接状态场景
相关博文: 系统编程-网络-tcp客户端服务器编程模型.socket.htons.inet_ntop等各API详解.使用telnet测试基本服务器功能 接着该上篇博文,咱们继续,首先,为了内容的完整性 ...
- Go+gRPC-Gateway(V2) 微服务实战,小程序登录鉴权服务(四):客户端强类型约束,自动生成 API TS 类型定义
系列 云原生 API 网关,gRPC-Gateway V2 初探 Go + gRPC-Gateway(V2) 构建微服务实战系列,小程序登录鉴权服务:第一篇 Go + gRPC-Gateway(V2) ...
- Spring Authorization Server 全新授权服务器整合使用
前言 Spring Authorization Server 是 Spring 团队最新开发适配 OAuth 协议的授权服务器项目,旨在替代原有的 Spring Security OAuth 经过半年 ...
- 华为分析+App Linking:一站式解决拉新、留存、促活难
移动互联网时代,用户注意力稀缺,"如何让用户一键直达APP特定页面"越来越受到产品和运营同学的关注. 比如在各个渠道投放了APP安装广告,希望新用户下载APP首次打开时直接进入活动 ...
- Go-27-import导包
import 导入包 包的搜索顺序: import ( "fmt" "net/http" "mypkg" ) 编译器会根据上面指定的相对路径 ...
- IDEA中Maven的配置
Maven安装 下载Maven 官网:https://maven.apache.org/ 下载完成后,解压即可: 配置环境变量 在本机电脑的系统环境变量中 配置如下配置: 路径:此电脑-->高级 ...