rsa Round #71 (Div. 2 only)
Replace A
Memory limit: 256 MB
You are given a string SS containing only letters A or B. You can take any two adjacent As and replace them by a single A. You perform operations as long as possible. Print the final string.
Standard input
The first line contains the string SS.
Standard output
Print the final string on the first line.
Constraints and notes
- SS contains between 11 and 100100 characters.
| Input | Output | Explanation |
|---|---|---|
AAABB |
ABB |
At the first step you can choose the first two At the second step, you can choose the only two adjacent You cannot do any more operations on this string. |
和上次CF的A一样,直接暴力
#include<bits/stdc++.h>
using namespace std;
const int N=;
int main()
{
ios::sync_with_stdio(false);
string s,t;
cin>>s;
set<char>S;
S.insert('A');
while(true)
{
int f=;
for(int i=;s[i]&&f;i++)
{
if(S.count(s[i-])&&S.count(s[i]))
{
f=;
t=s.substr(,i)+s.substr(i+);
}
}
if(f)break;
s=t;
}
cout<<s;
return ;
}
Matrix Balls
Memory limit: 256 MB
You are given a matrix AA of size N \times MN×M, containing distinct elements. Initially there is a ball placed in every cell of the matrix. Each ball follows the following movement:
- If the current cell is smaller than all of its (at most 88) neighbours, the ball stops in this cell;
- otherwise, the ball moves to the smallest neighbouring cell.
Find for each cell of AA how many balls will end up there, when all the balls stop moving.
Standard input
The first line contains two integers NN and MM.
Each of the next NN lines contains MM integers representing the elements of AA.
Standard output
Print NN lines, each containing MM integers. The j^{th}jth element on the i^{th}ith line should represent the number of balls that end up in cell (i, j)(i,j).
Constraints and notes
- 1 \leq N, M \leq 5001≤N,M≤500
- 0 \leq A_{i, j} \leq 3*10^50≤Ai,j≤3∗105
| Input | Output | Explanation |
|---|---|---|
3 3 |
6 0 0 |
Considering a ball in each cell, matrix[i][j]matrix[i][j] represents the value to which that ball will move 00 represents a ball that does not move to any other location (the cell is the smallest of the 88 neighbours) 1
2
3
4
0 1 3
1 1 2
5 2 0
The value on which the ball will be placed after it moved as described in the statement 1
2
3
4
1 1 1
1 1 2
1 2 2
|
1 6 |
1 0 5 0 0 0 |
|
4 4 |
0 4 0 4 |
The value on which the ball will be placed after it moved as described in the statement 1
2
3
4
5
2 2 1 1
2 2 1 1
3 3 5 5
3 3 5 5
|
一个球可以向八个方向滚,滚到最小的里面,问最后每个那里面放几个
必须要记忆化搜索,但是要多搜几个方向的
#include<bits/stdc++.h>
using namespace std;
const int N=;
int a[N][N],b[N][N],n,m;
int d[][]= {,,,,,-,,,,-,-,,-,,-,-};
int main()
{
ios::sync_with_stdio(false);
cin>>n>>m;
for(int i=; i<n; i++)
for(int j=; j<m; j++)
cin>>a[i][j],b[i][j]=;
int f=;
while(f)
{
f=;
for(int i=; i<n; i++)
for(int j=; j<m; j++)
if(b[i][j])
{
int x=i,y=j;
for(int k=; k<; k++)
{
int tx=i+d[k][],ty=j+d[k][];
if(!(tx<||tx>=n||ty<||ty>=m)&&a[tx][ty]<a[x][y])
x=tx,y=ty;
}
if(x!=i||y!=j)
b[x][y]+=b[i][j],b[i][j]=,f=;
}
}
for(int i=; i<n; i++)
{
for(int j=; j<m; j++)
cout<<b[i][j]<<" ";
cout<<"\n";
}
return ;
}
按照数不同往下搜索
#include<bits/stdc++.h>
using namespace std;
const int N=3e5+;
int d[][]= {,,,,,-,,,,-,-,,-,,-,-};
int n,m,a[][],b[][];
pair<int,int>g[N];
int main()
{
cin>>n>>m;
for(int i=; i<=n; i++)
for(int j=; j<=m; j++)
b[i][j]=,cin>>a[i][j],g[a[i][j]]=make_pair(i,j);
for(int i=; i>=; --i)
{
if(g[i].first==)continue;
int x=g[i].first,y=g[i].second,mi=i,sx=,sy=;
for(int j=; j<; j++)
{
int tx=x+d[j][],ty=y+d[j][];
if(tx<||ty<||tx>n||ty>m)continue;
if(a[tx][ty]<mi)
mi=a[tx][ty],sx=tx,sy=ty;
}
if(mi!=i)b[sx][sy]+=b[x][y],b[x][y]=;
}
for(int i=; i<=n; i++)
{
for(int j=; j<=m; j++)
cout<<b[i][j]<<" ";
cout<<"\n";
}
return ;
}
Binary Differences
Memory limit: 256 MB
You are given a binary array AA of size NN. We define the cost of a subarray to be the number of 00s minus the number of 11s in the subarray. Find the number of distinct values KK such that there is at least one subarray of cost KK.
Standard input
The first line contains one integer NN.
The second line contains NN integers (00 or 11) representing the elements of AA.
Standard output
Print the answer on the first line.
Constraints and notes
- 1 \leq N \leq 10^51≤N≤105
- The subarray may be empty
| Input | Output | Explanation |
|---|---|---|
3 |
3 |
We have 33 different costs:
|
4 |
4 |
|
这个是模拟
#include<bits/stdc++.h>
using namespace std;
int n,mi,ma,x,s,mis,mas;
int main()
{
cin>>n;
for(int i=; i<=n; ++i)
{
cin>>x;
if(!x)s++;
else s--;
mi=min(mi,s-mas),ma=max(ma,s-mis),mas=max(mas,s),mis=min(mis,s);
}
cout<<ma-mi+;
return ;
}
rsa Round #71 (Div. 2 only)的更多相关文章
- BestCoder Round #71 (div.2)
数学 1001 KK's Steel 类似斐波那契求和 #include <cstdio> #include <cstring> #include <algorithm& ...
- BestCoder Round #71 (div.2) (hdu 5621)
KK's Point Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- BestCoder Round #71 (div.2) (hdu 5620 菲波那切数列变形)
KK's Steel Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- [Codeforces Educational Round 71]Div. 2
总结 手速场...像我这种没手速的就直接炸了... 辣鸡 E 题交互,少打了个 ? 调了半个小时... 到最后没时间 G 题题都没看就结束了...结果早上起来被告知是阿狸的打字机...看了看题一毛一样 ...
- Educational Codeforces Round 71 (Rated for Div. 2)-F. Remainder Problem-技巧分块
Educational Codeforces Round 71 (Rated for Div. 2)-F. Remainder Problem-技巧分块 [Problem Description] ...
- Educational Codeforces Round 71 (Rated for Div. 2)-E. XOR Guessing-交互题
Educational Codeforces Round 71 (Rated for Div. 2)-E. XOR Guessing-交互题 [Problem Description] 总共两次询 ...
- hdu5634 BestCoder Round #73 (div.1)
Rikka with Phi Accepts: 5 Submissions: 66 Time Limit: 16000/8000 MS (Java/Others) Memory Limit: ...
- Codeforces Beta Round #65 (Div. 2)
Codeforces Beta Round #65 (Div. 2) http://codeforces.com/contest/71 A #include<bits/stdc++.h> ...
- (BestCoder Round #64 (div.2))Array
BestCoder Round #64 (div.2) Array 问题描述 Vicky是个热爱数学的魔法师,拥有复制创造的能力. 一开始他拥有一个数列{1}.每过一天,他将他当天的数列复制一遍,放在 ...
随机推荐
- jenkins只能同时构建2个Job怎么办?
在jenkins 构建任务时,同时只能构建2个,如果两个没有job没有结束,构建第3个就会不执行: 提示: pending—Waiting for next available executor on ...
- GetRelativePath获取相对路径
public static string GetRelativePath(string baseDirPath, string subFullPath) { // ForceBasePath to a ...
- SQL Server AlwaysON从入门到进阶(6)——分析和部署AlwaysOn Availability Group
前言: 本节是整个系列的重点文章,到现在,读者应该已经对整个高可用架构有一定的了解,知道独立的SQL Server实例和基于群集的SQL Server FCI的区别.上一节已经介绍了如何安装SQL ...
- (转载)资源字典(Pro WPF 学习)
原地址:http://www.cnblogs.com/yxhq/archive/2012/07/09/2582508.html 1.创建资源字典 下面是一个资源字典(AppBrushes.xaml), ...
- noip模拟赛#14
#14: T1:f[x]=x-1(x&1)||x/2(x&1=0) 求[n,m]有多少个数可以通过变换得到k.(1e9). =>好像cf上看过类似的题,用二进制的方式来写.不过我 ...
- python之函数的传参形参的第三种动态参数*args和**kwargs
1. 位置/关键字传参的缺点 当给函数传入的参数数目不定时,之前的传参方式解决不了问题. def eat(food1,food2,food3): print(f'我请你吃:{food1},{food2 ...
- JavaScript——图片懒加载
前言 有一个朋友问我这个问题,刚好有时间,现在就简单的写个Demo~ github | https://github.com/wangyang0210/bky/tree/picLoadLazy 内容 ...
- iOS应用架构谈-part1概述
当我们讨论客户端应用架构的时候,我们在讨论什么? 其实市面上大部分应用不外乎就是颠过来倒过去地做以下这些事情: --------------- --------------- ------------ ...
- Linux-Mysql8.0
Mysql8.0.12 基本操作 解释 命令 安装服务端 yum install mysql-community-server 启动 service mysqld start/restart 停止 s ...
- JS正则表达式学习总结
JS正则:java RegExp对象,它是对字符串执行模式匹配的强大工具.运用最多的就是在输入处验证输入的字符串是否合法,指定用户输入字符串的格式. 定义方法: 1:直接量语法:var re=/pat ...