您的位置:首页 > 其它

hackerrank初级篇之Birthday Cake Candles

2018-03-01 18:25 393 查看
题目说明:



示例代码:// birthdayCakeCandles.cpp: 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <windows.h>
#include <vector>
#include <iostream>
using namespace std;

//by zhaocl
int birthdayCakeCandles( int n, vector<int>arr )
{
//find max num
int maxNum = 0;
int times = 0;

for( int i = 0; i < n; i++ )
{
if( maxNum <= arr[i] )
maxNum = arr[i];
}

//find times
for( int i = 0; i < n; i++ )
{
if( maxNum == arr[i] )
times++;
}

return times;
}

//by apghr
int birthdayCakeCandleMore( int n, vector<int>arr )
{
int num = 0;
int maxnum = 0;
int c = 0;

while( n-- )
{
if( maxnum < arr
)
{
maxnum = arr
;
c = 1;
}
else
{
if( maxnum == arr
)
c++;
}
}

return c;
}

//by apghr
int birthdayCakeCandleBetter( int n, vector<int>arr )
{
int max = 0;
int c = 0;

while( n-- )
{
max < arr
? c = !!( max = arr
) : c += max == arr
;
}

return c;
}
int main()
{
int n = 0;
int times = 0;
cin >> n;
vector<int> arr( n );

for( int i = 0; i < n; i++ )
{
cin >> arr[i];
}

//times = birthdayCakeCandles(n, arr);
//times = birthdayCakeCandleMore(n, arr);
times = birthdayCakeCandleBetter( n, arr );
cout << times << endl;
system( "pause" );
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: