SMU Summer 2023 Contest Round 4

A. Telephone Number

满足第一个8后面存在10个字符即可

#include  <bits/stdc++.h>
#define endl '\n'
#define int long long using namespace std; int n,m;
void solve(){
cin >> n;
string s;
cin >> s;
int p = s.find_first_of('8') ;
if(p > n - 11 || p == -1 || n < 11)
cout << "NO" << endl;
else
cout << "YES" << endl;
}
signed main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);cout.tie(nullptr);
int Ke_scholar = 1;
cin >> Ke_scholar;
while(Ke_scholar--)
solve();
return 0;
}

B. Lost Numbers

因为只有6个数,所以可以直接用\(next\_permutation\)全排列暴力匹配,不要关闭流同步!!!

#include  <bits/stdc++.h>
#define endl '\n'
#define int long long using namespace std; int n,m;
void solve(){ int res[5];
for(int i = 1;i <= 4;i ++){
cout << "? " << i << ' ' << i + 1 << endl;
fflush(stdout);
cin >> n;
res[i] = n;
} int ans[] = {0,4,8,15,16,23,42};
do{
if(ans[1] * ans[2] == res[1] && ans[2] * ans[3] == res[2] && ans[3] * ans[4] == res[3] && ans[4] * ans[5] == res[4]){
cout << '!';
for(int i = 1;i <= 6;i ++)
cout << ' ' << ans[i];
cout << endl;
fflush(stdout);
break;
}
}while(next_permutation(ans + 1,ans + 7)); }
signed main()
{
// ios::sync_with_stdio(false);
// cin.tie(nullptr);cout.tie(nullptr);
int Ke_scholar = 1;
// cin >> Ke_scholar;
while(Ke_scholar--)
solve();
return 0;
}

C. News Distribution

用并查集维护每个人所在的圈子,然后循环每个人所在的圈子\(++\)

#include  <bits/stdc++.h>
#define endl '\n'
#define int long long using namespace std; int n,m;
void solve(){
cin >>n >> m; vector<int> fa(n + 1);
vector<int> ans(n + 1,0);
iota(fa.begin(),fa.end(),0); auto find = [&](auto self,int x)->int {
return fa[x] == x ? x : (fa[x] = self(self,fa[x]));
}; auto add = [&](int x,int y){
fa[find(find,x)] = find(find,y);
}; for(int i = 1;i <= m;i ++){
int k,o,p;
cin >> k;
if(k) cin >> o;
for(int j = 1;j < k;j++){
cin >> p;
add(o,p);
}
}
for(int i = 1;i <= n;i++)
ans[find(find,i)]++;
for(int i = 1;i <= n;i ++){
cout << ans[find(find,i)] << ' ';
} }
signed main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);cout.tie(nullptr);
int Ke_scholar = 1;
// cin >> Ke_scholar;
while(Ke_scholar--)
solve();
return 0;
}

D. Bicolored RBS

\(r\)和\(b\)左右括号每相隔一个交叉染色即可

#include  <bits/stdc++.h>
#define endl '\n'
#define int long long
#define inf 0x3f3f3f3f using namespace std; int n,m;
int zr,zb;
void solve(){
string s;
cin >> n >> s;
stack<char> r,b;
for(int i = 0;i < n;i ++){
if(s[i] == '('){
if(zr & 1){
cout << 0;
}else{
cout << 1;
}
zr++;
}else{
if(zb & 1){
cout << 0;
}else{
cout << 1;
}
zb++;
}
}
}
signed main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);cout.tie(nullptr);
int Ke_scholar = 1;
// cin >> Ke_scholar;
while(Ke_scholar--)
solve();
return 0;
}

SMU Summer 2023 Contest Round 4的更多相关文章

  1. 2015 Astar Contest - Round 3 题解

    1001 数长方形 题目大意 平面内有N条平行于坐标轴的线段,且不会在端点处相交 问共形成多少个矩形 算法思路 枚举4条线段的全部组合.分别作为矩形四条边.推断是否合法 时间复杂度: O(N4) 代码 ...

  2. Contest Round #451 (Div. 2)F/Problemset 898F Restoring the Expression

    题意: 有一个a+b=c的等式,去掉两个符号,把三个数连在一起得到一个数 给出这个数,要求还原等式,length <= 1e6 三个数不能含有前导0,保证有解 解法: 铁头过题法,分类然后各种判 ...

  3. Codeforces Round #284 (Div. 2)A B C 模拟 数学

    A. Watching a movie time limit per test 1 second memory limit per test 256 megabytes input standard ...

  4. Sending messages to non-windowed applications -- AllocateHWnd, DeallocateHWnd

    http://delphi.about.com/od/windowsshellapi/l/aa093003a.htm Page 1: How Delphi dispatches messages in ...

  5. Codeforces 240 F. TorCoder

    F. TorCoder time limit per test 3 seconds memory limit per test 256 megabytes input input.txt output ...

  6. cf499B-Lecture 【map】

    http://codeforces.com/problemset/problem/499/B B. Lecture     You have a new professor of graph theo ...

  7. Codeforces 240F. TorCoder 线段树

    线段树统计和维护某一区间内的字母个数.. . . F. TorCoder time limit per test 3 seconds memory limit per test 256 megabyt ...

  8. 物联网学生科协第三届H-star现场编程比赛

    问题 A: 剪纸片 时间限制: 1 Sec 内存限制: 128 MB 题目描写叙述 这是一道简单的题目,假如你身边有一张纸.一把剪刀.在H-star的比赛现场,你会这么做: 1. 将这张纸剪成两片(平 ...

  9. [cf contest 893(edu round 33)] F - Subtree Minimum Query

    [cf contest 893(edu round 33)] F - Subtree Minimum Query time limit per test 6 seconds memory limit ...

  10. 水题 Codeforces Round #307 (Div. 2) A. GukiZ and Contest

    题目传送门 /* 水题:开个结构体,rk记录排名,相同的值有相同的排名 */ #include <cstdio> #include <cstring> #include < ...

随机推荐

  1. Unity 编辑器中获取选中的文件夹、文件路径

    编辑器中获取选中的文件夹.文件路径 using UnityEditor; using UnityEngine; using Object = UnityEngine.Object; public cl ...

  2. python 将查询到数据,处理成包含列名和数据的字典类型数据

    try: self.connect_dbserver() self.cursor.execute(sql) res = self.cursor.fetchall() # 返回的是数组的类型 print ...

  3. CF1860

    很失败啊 A 题大力分讨,罚了 \(2\) 次 B 题大力分讨,罚了 \(1\) 次 C 题大力 dp 一发过 然后就睡觉了 感觉 CF 打少了智商掉了,被前几题拖了太久

  4. 用StabilityMatrix一键安装Stable Diffusion

    Stable Diffusion是2022年发布的深度学习文字到图像生成模型,它既能免费使用,又能部署在本地端,又有非常多的模型可以直接套用,在使用体验上比Midjourney和DALL-E更加强大. ...

  5. JS中this的几种指向

    这些this的指向,是当我们调用函数的时候确定的.调用方式的不同决定了this的指向不同一般指向我们的调用者.普通函数调用          window.定时器函数             wind ...

  6. Java 散列表HashTable

    什么是散列表hash table和使用场景 什么是散列表 散列表(Hash table,也叫哈希表),是根据关键码值(key value)而直接进行访问的数据结构.它通过把关键码值映射到表中一个位置来 ...

  7. ASP.NET Core中创建中间件的几种方式

    前言 今天我们一起来盘点一下在ASP.NET Core应用程序中添加和创建中间件常见的四种方式. 中间件介绍 ASP.NET Core中间件(Middleware)是用于处理HTTP请求和响应的组件, ...

  8. 解决方案 | AutoCAD 版本+版本号+受支持的 .NET SDK版本+.NET Framework版本

    关于 Managed .NET 兼容性 Managed .NET 应用程序通常与扩展基于 AutoCAD 的产品的行为和功能的公司和第三方应用程序关联. 在移植到最新版本后,并非所有 .NET 应用程 ...

  9. Swift开发基础06-闭包

    Swift的闭包(Closures)是一种将功能块和上下文整合并演示在代码中的一种手段.闭包可以捕获并存储其上下文中的变量和常量.与普遍存在于其他语言的匿名函数(如Python的lambda.Java ...

  10. webpack性能优化方式之dll--- webpack.dll.config.js

    通常来说,我们的代码都可以至少简单区分成业务代码和第三方库.如果不做处理,每次构建时都需要把所有的代码重新构建一次,耗费大量的时间.然后大部分情况下,很多第三方库的代码并不会发生变更(除非是版本升级) ...