혜랑's STORY

[HackerRank] Birthday Cake Candles 본문

2021 SISS 21기 활동/여름방학 C언어

[HackerRank] Birthday Cake Candles

hyerang0125 2021. 7. 18. 00:14
2주차 과제

1. 문제

2. 풀이

int birthdayCakeCandles(int candles_count, int* candles) {
    int max = 0, cnt = 0;
    for(int i=1; i<candles_count; i++)
        if(candles[max] < candles[i]) max = i;
    for(int i=0; i<candles_count; i++)
        if(candles[max] == candles[i]) ++cnt;
    return cnt;
}
  • max는 가장 큰 값을 가지고 있는 인덱스이고, cnt는 가장 큰 초의 개수를 담을 변수이다.
  • max는 0으로 초기화 되었기 때문에 1부터 candles_count-1까지 candles를 탐색한다. 이때 만약 max번째의 값보다 i 번째의 값이 더 크다면 max는 i가 된다.
  • max값을 찾은 후 0부터 candles_count-1까지 탐색하며 max번째의 값과 같은 초의 개수를 센다.
  • cnt를 반환하고 함수를 종료한다.

 

3. 결과

'2021 SISS 21기 활동 > 여름방학 C언어' 카테고리의 다른 글

[HackerRank] Pangrams  (0) 2021.07.24
[HackerRank] Caesar Cipher  (0) 2021.07.24
[HackerRank] Sherlock and Divisiors  (0) 2021.07.18
[HackerRank] Bill Division  (0) 2021.07.11
[HackerRank] Handshake  (0) 2021.07.11