解题思路:
注意事项:
参考代码:
#include<iostream> using namespace std; const int M=50000+2; int a[M]={0}; int check(int i,int j) { int Max,Min; Max=Min=a[i]; for(int k=i;k<=j;k++) { if(a[k]>Max) Max=a[k]; if(a[k]<Min) Min=a[k]; if((Max-Min)>(j-i)) return 0; } if((Max-Min)==(j-i)) return 1; else return 0; } int main() { int n; while(cin>>n) { for(int i=0;i<n;i++) { cin>>a[i]; } int ans=0; for(int i=0;i<n-1;i++) { for(int j=i+1;j<n;j++) { if(check(i,j)) ans++; } } cout<<ans+n<<endl; } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:669 |
【计算球体积】 (C语言代码)浏览:1102 |
1157题解浏览:716 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:559 |
循环入门练习6 (C语言代码)浏览:969 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:588 |
字符串的输入输出处理 (C语言代码)浏览:1009 |
理财计划 (C语言代码)浏览:468 |
青年歌手大奖赛_评委会打分 (C语言代码)浏览:2150 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:674 |