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;
}
示例代码:// 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;
}
相关文章推荐
- Codeforces Round #343 (Div. 2) D. Babaei and Birthday Cake
- A. Far Relative’s Birthday Cake
- CodeForces-629A-Far Relative’s Birthday Cake
- 多边形面积 尺取法 B - Birthday Cake Gym - 100090B
- Codeforces Round #343 (Div. 2) D. Babaei and Birthday Cake(离散化+线段树)
- codeforces #343 div2 D. Babaei and Birthday Cake(DP+离散化+线段树优化)
- hackerrank初级篇之Plus Minus
- Codeforces Round #343 (Div. 2) D. Babaei and Birthday Cake(线段树+离散化优化DP)
- hackerrank初级篇之staircase
- Codeforces Round #343 (Div. 2) A. Far Relative’s Birthday Cake 水题
- #Codeforces 343 [div2] D. Babaei and Birthday Cake 【线段树优先队列查询优化】
- Codeforces Round #343 (Div. 2) D. Babaei and Birthday Cake(dp + BIT)
- Codeforces Round #343 (Div. 2) D. Babaei and Birthday Cake 线段树维护dp
- codeforces 629D-Babaei and Birthday Cake(dp && 线段树或树状数组离散优化)
- codeforces #334 D. Babaei and Birthday Cake (线段树或者dp+二分)
- hackerrank初级篇之Time Conversion
- codeforces 629 D. Babaei and Birthday Cake dp + 线段树
- cf Babaei and Birthday Cake(树状数组解决LIS问题)
- Codeforces 629D.( Babaei and Birthday Cake)
- CodeForces 629 D.Babaei and Birthday Cake(dp+线段树)