博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【bzoj2882】工艺 最小表示法
阅读量:4614 次
发布时间:2019-06-09

本文共 1213 字,大约阅读时间需要 4 分钟。

【bzoj2882】工艺

Description

小敏和小燕是一对好朋友。
他们正在玩一种神奇的游戏,叫Minecraft。
他们现在要做一个由方块构成的长条工艺品。但是方块现在是乱的,而且由于机器的要求,他们只能做到把这个工艺品最左边的方块放到最右边。
他们想,在仅这一个操作下,最漂亮的工艺品能多漂亮。
两个工艺品美观的比较方法是,从头开始比较,如果第i个位置上方块不一样那么谁的瑕疵度小,那么谁就更漂亮,如果一样那么继续比较第i+1个方块。如果全都一样,那么这两个工艺品就一样漂亮。

Input

第一行两个整数n,代表方块的数目。
第二行n个整数,每个整数按从左到右的顺序输出方块瑕疵度的值。

Output

一行n个整数,代表最美观工艺品从左到右瑕疵度的值。

Sample Input

10
10 9 8 7 6 5 4 3 2 1

Sample Output

1 10 9 8 7 6 5 4 3 2

HINT

【数据规模与约定】

对于20%的数据,n<=1000
对于40%的数据,n<=10000
对于100%的数据,n<=300000

题解

输出最小表示TAT

1 #include
2 #include
3 #include
4 #include
5 #include
6 7 #define N 300007 8 using namespace std; 9 inline int read()10 {11 int x=0,f=1;char ch=getchar();12 while(ch<'0'||ch>'9'){
if(ch=='-')f=-1;ch=getchar();}13 while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+ch-'0';ch=getchar();}14 return x*f;15 }16 17 int n;18 int a[N];19 20 int min_express()21 {22 int i=0,j=1,k=0;23 while(i
0)i+=k+1;30 else j+=k+1;31 if (i==j) j++;32 k=0;33 }34 }35 return min(i,j);36 }37 int main()38 {39 n=read();40 for (int i=0;i

 

转载于:https://www.cnblogs.com/fengzhiyuan/p/8286884.html

你可能感兴趣的文章
一个应用商店的展示
查看>>
GPUImage的简单使用
查看>>
VIM Pal 1.1.0 发布,VIM 文件树列表
查看>>
Exam 70-762 Developing SQL Databases
查看>>
关于排列问题的一系列归类
查看>>
(转)php语法(符号用法)
查看>>
Delphi Post登陆Delphi盒子论坛源码
查看>>
wcf自定义绑定
查看>>
MongoDB数据文件内部结构(转载)
查看>>
IntelliJ IDEA常用统一设置(Linux/Mac/Windows)
查看>>
JSP发送电子邮件
查看>>
button变成href (即按钮超链效果)
查看>>
SQL语句-创建索引
查看>>
通用服务器架构
查看>>
安卓(Android)手机Flash Player官方下载地址
查看>>
laravel Faker-1.faker假数据
查看>>
python3安装Fabric模块
查看>>
Django models中关于blank与null
查看>>
桶排序 bucket sort
查看>>
Google搜索技巧
查看>>