3130959_ac_0ms_300k.cpp

来自「北大大牛代码 1240道题的原代码 超级权威」· C++ 代码 · 共 66 行

CPP
66
字号
#include<iostream>
#define MAX 1000
using namespace std;
void main()
{
	int a[MAX];
	int i=1;
	do
	{
		cin>>a[0];
		int n=0;
		int cup=0,cdown=0;
		int up=0,down=0;
		int flag=-1;
		int t=0;
		if(a[0]==0)
		    break;
		i=1;
		do scanf("%d",&a[i]);
		while(a[i++]!=0);
		n=i-1;
		for(i=1;i<n;i++)
		{
			if(a[i-1]<a[i])
			{
				cup=1;
				flag=0;
				break;
			}
			if(a[i-1]>a[i])
			{
				cdown=1;
				flag=1;
				break;
			}
		}
		for(i=1;i<n;i++)
		{
			if(a[i-1]<a[i])
			{
				up++;
				if(flag==1)
					cup++;
				flag=0;
			}
			if(a[i-1]>a[i])
			{
				down++;
				if(flag==0)
					cdown++;
				flag=1;
			}
			if(a[i-1]==a[i])
			{
				if(flag==0)
					up++;
				if(flag==1)
					down++;
			}
		}
		if(cup==0) cup=1;
		if(cdown==0) cdown=1;
		printf("Nr values = %d:  %f %f\n",n,float(up)/cup,float(down)/cdown);
	}while(1);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?