#include<string.h>
#include<algorithm>
#include<queue>
using namespace std
const int MAX=100
int max_(int a,int b){return a>b?a:b}
int min_(int a,int b){return a<b?a:b}
int findMax(int a[],int s,int t)
{
if(s==t-1)return a[s]
int mid=(s+t)>>1
return max_(findMax(a,s,mid),findMax(a,mid,t))
}
int findMin(int a[],int s,int t)
{
if(s==t-1)return a[s]
int mid=(s+t)>>1
return min_(findMin(a,s,mid),findMin(a,mid,t))
}
int main()
{
//输入 *** 作,1为取出最大
int a[MAX]
int n
int i
scanf("%d",&n)
for(i=0i<ni++)
scanf("%d",&a[i])
printf("最大:%d\n",findMax(a,0,n))
printf("最小:%d\n",findMin(a,0,n))
return 0
}
#include "stdio.h"int k1,k2
void fun(int *d,int m,int n)
{
int count
count=0
for(int j=0j<nj++)
{
if(d[m]<=d[j])
count=count+1
}
if(n-count+1>=k1 &&n-count+1<=k2)
printf("%d ",d[m])
}
int main()
{
int d[100],n
printf("输入整数个数:")
scanf("%d",&n)
printf("输入%d个整数:\n",n)
for(int i=0i<ni++)
scanf("%d",&d[i])
printf("输入范围上下限(第k1小到第k2小之间):")
scanf("%d %d",&k1,&k2)
for(int j=0j<nj++)//逐个看是否第k1小到第k2小之间
fun(d,j,n)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)