본문 바로가기

내일배움 캠프/TIL

2023 04 05 푸드 파이트 대회

출력 예시

food result
[1, 3, 4, 6] "1223330333221"
[1, 7, 1, 2] "111303111"

해당 문제를 풀기위해 일단 주어진 배열을 반으로 나누어서 0 이전에 앞에있는

만큼의 문자열을 출력하기위해 배열의 값을 반으로 나누어서 바꾸면 되지 않을까

생각을 했습니다

a= list(map(lambda x: x//2, food))

를 통해서 1 3 4 6 이 들어있으면 [0 ,1 ,2 ,3] 이 나오게 되어서

앞에 나와야하는 절반 만큼의 음색양만을 가져오게 하였습니다

그 이후 for문을 통해서 각 값의 양만큼 인덱스를 출력하게 해서 문제를 해결했습니다

 

for idx,b in enumerate(a):
	answer+=str(idx)*b

그 후 마지막은 영 생각이 안나서....

return answer + '0' +answer[::-1]

해당 코드를 이용해서 앞뒤로 가져다가 붙여서 해결했습니다