51nod 2502 最多分成多少块
2024-09-06 07:20:46
小b有个长度为n的数组a,她想将这个数组排序。
然而小b很懒,她觉得对整个数组排序太累了,因此她请你将a分成一些块,使得她只需要对每一块分别排序,就能将整个数组排序。
请问你最多能把a分成多少块。
保证a为0...n-1的一个排列。
样例解释:
将a分成2块或者更多块,都无法得到所需的结果。
例如,分成 [4, 3], [2, 1, 0] ,排序得到的结果是 [3, 4, 0, 1, 2],这不是有序的数组。
收起
输入
第一行一个数n;
第二行n个数表示a[i],以空格隔开。
n<=10
输出
输出一个数表示划分块的数量
输入样例
5
4 3 2 1 0
输出样例
1 如果i-j可以分为一块,那么这块里的最小是i最大是j。
代码:
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <vector> using namespace std;
int n,c,d;
int s[];
int main() {
scanf("%d",&n);
for(int i = ;i < n;i ++) {
scanf("%d",&d);
if(i) s[i] = max(d,s[i - ]);
else s[i] = d;
if(s[i] == i) c ++;
}
printf("%d",c);
}
最新文章
- [LeetCode] Reverse Linked List
- Rdlc报表出现空白页解决方法(转)
- HTML-3月20日课堂总结
- DEDE在下载文件时会生成table
- python里的Join函数
- Smarty for foreach 使用
- byte数组转16进制 输出到文件
- 1029: [JSOI2007]建筑抢修
- Java 随笔记录
- java锁机制
- Android的主线程和子线程
- C#移位运算(左移和右移)
- SpringCloud的EurekaClient : 客户端应用访问注册的微服务(有断路器场景)
- 更新Cocos2D支持Xcode 7
- Codeforces 258D Little Elephant and Broken Sorting (看题解) 概率dp
- 【nodejs】--express的中间件multer实现图片文件上传--【XUEBIG】
- sap 创建odata服务,通过http向数据库 进行增删改查
- 【版本发布】JAVA微服务开发框架,Jeecg-P3 1.0.0 重构版本发布
- LINUX CentOS7安装字体库
- 「专题训练」游走(BZOJ-3143)