IT 개발자_S

해커랭크 Picking Numbers 본문

IT/알고리즘_Python

해커랭크 Picking Numbers

Soso12 2020. 3. 29. 20:05
반응형

1. 입력된 배열로

2. 절대 값이 <=1 인 배열의 갯수의 max 값을 구하라

3. max 값을 구하기 위해 배열을 sort 한 다음

4. sort 된 배열을 순서대로 빼준 후 <=1 범위 안에 들면 res 값을 +1 을해준다

5. 단 모두 같은 숫자를 입력할시 이중 for문의 else 값으로 들어각지 않기 때문에 따로 로직 처리 len(a)

6. 배열을 100 초기화하여 처리해줘도 된다.

 

 

#!/bin/python3

 

import math

import os

import random

import re

import sys

 

#

# Complete the 'pickingNumbers' function below.

#

# The function is expected to return an INTEGER.

# The function accepts INTEGER_ARRAY a as parameter.

#

 

def pickingNumbers(a):

    # Write your code here

    # 4 6 5 3 3 1

    # 1 3 3 4 5 6

    # 3

    a.sort()

    res =0

    tem =0

    cnt =0

    for i in range(len(a)-1) :

        for j in range(i,len(a)) :

 

            ifabs(a[i] - a[j] ) <=1):

                print(a[i], a[j], tem , '@')

                tem +=1

            else :

                print(a[i], a[j], tem , '!')

                if(res < tem ) :

                    res = tem

                tem =0

                cnt +=1

    if (cnt ==0) :

        res =len(a)

    return res

if __name__ == '__main__':

    fptr = open(os.environ['OUTPUT_PATH'], 'w')

 

    n = int(input().strip())

 

    a = list(map(intinput().rstrip().split()))

 

    result = pickingNumbers(a)

 

    fptr.write(str(result) + '\n')

 

    fptr.close()

 

반응형

'IT > 알고리즘_Python' 카테고리의 다른 글

해커랭크 Desinger PDF Viewer  (0) 2020.03.31
해커랭크 The Hurdle Race  (0) 2020.03.31
해커랭크 Brithday Chocolate  (0) 2020.03.22
해커랭크 Breaking the Records  (0) 2020.03.22
해커랭크 Kangaroo PYTHON  (0) 2020.03.13
Comments