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}.每过一天,他将他当天的数列复制一遍,放在 ...
随机推荐
- 关于学习Lisp的一点思考
以前读<黑客与画家>,其中对Lisp语言的赞美和推崇,让我燃起学习Lisp语言的强烈冲动,但很快发现在实际工作中应用的场景很少,出于功利心最终放弃了.直到上周未在家里读完了<大教堂与 ...
- java面试题(杨晓峰)---以面试题为切入点,有效提升你的java内功
java是一门历史悠久的编程语言,可以毫无争议的说,java是最主流的编程语言之一.全球有1200万以上的java程序猿以及海量的设备,还有无所不能的java生态圈. 我所知道的诸如阿里,京东,百度, ...
- python基础教程总结5——函数
1.函数创建 1).函数代码块以def关键词开头,后接函数标识符名称和圆括号()2).任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数3).函数的第一行语句可以选择性地使用文档字符串 ...
- 在openSUSE 13.1上用gem安装rails无反应: gem install rails
解决方案: gem install rails -V ....其实他本身在后台运行,白白的给他中断好多次,用-V这个选项就可以直接回显信息了
- Unity四元素运用之风向标跟随箭头
using System.Collections; using System.Collections.Generic; using UnityEngine; public class WindVane ...
- 【UML】构件图Component diagram(实现图)(转)
http://blog.csdn.net/sds15732622190/article/details/49048887 前言 下面要介绍UML中的构建图,它属于实现图的一种,五种静态图之一. 定义 ...
- UVA 1606 Amphiphilic Carbon Molecules 两亲性分子 (极角排序或叉积,扫描法)
任意线可以贪心移动到两点上.直接枚举O(n^3),会TLE. 所以采取扫描法,选基准点,然后根据极角或者两两做叉积比较进行排排序,然后扫一遍就好了.旋转的时候在O(1)时间推出下一种情况,总复杂度为O ...
- Js笔记 14
<script> // <!-- 课 对象 // //对象的创建方法 // 1.var obj = {} plainobject 对象字面量 对象直接量 // 2.构造函数 ...
- 01_2_模拟spring装载bean
01_2_模拟spring装载bean 1. xml配置文件内容 beans.xml <beans> <bean id="u" class="com.w ...
- 简单的cocos2dx笔试题
1.参数传递有几种方式?值传递.指针传递.引用传递 2.指针和引用有什么分别:如果传引用比传指针安全,为什么?如果我使用常量指针难道不行吗? 1.指针是一个变量,存储一个地址,指向内存的一个存储单元: ...