1 条题解
-
0
方案1:
#include<stdio.h> int main(){ int n,l,r; scanf("%d %d %d",&n,&l,&r); int a[1005]; for(int i = 0;i<n;i++) scanf("%d",&a[i]); for(int i = 0;i<n-1;i++){ for(int j = l;j<r;j++){ if(a[j] > a[j+1]){ int temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } for(int i = 0;i<n;i++) printf("%d ",a[i]); return 0; }方案2:
#include<stdio.h> #include<math.h> #include<stdlib.h> int cmp(const int *a,const int *b){ return *(int *)a - *(int *)b; } int main(){ int n,l,r; scanf("%d %d %d",&n,&l,&r); int a[1005]; for(int i = 0;i<n;i++) scanf("%d",&a[i]); int x = r - l + 1; int b[x]; for(int i = l;i<=r;i++) b[i-l] = a[i]; qsort(b,x,sizeof(int),cmp); for(int i = l;i<=r;i++){ a[i] = b[i-l]; } for(int i = 0;i<n;i++) printf("%d ",a[i]); return 0; }
信息
- ID
- 1426
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- 5
- 标签
- 递交数
- 266
- 已通过
- 99
- 上传者