2024. 3. 12. 20:56ㆍ내일배움캠프
3월 12일
오늘은 재밌는 알고리즘 문제풀이 시간을 가져보겠다
푸드 파이트 대회
문제 설명은 이렇다
![](https://blog.kakaocdn.net/dn/cebsDY/btsFK3PtiF1/pDxRlerIE3W1N6iy18vxq0/img.png)
문제가 길다... 원래 같았으면 문제를 보고 고민을 살짝 해보다 이것저것 도전해보는데
문제가 너무 길기도하고 감기몸살 덕분에 전혀 집중이 되지 않아 문제를 보고 이해하는데 시간이 좀 걸렸다.
![](https://blog.kakaocdn.net/dn/chfxak/btsFLpSixzm/rpgEdZ2YSVuUzRF8OY4yWK/img.png)
제한 사항은 이렇게 된다
즉 food[0]은 물이니깐 food[1] ~ 새야하는데 양쪽에서 같은 음식을 먹어 치우면서 가기 때문에 홀수의 음식은
버리고 계산을 해야 맞는거 같다.
![](https://blog.kakaocdn.net/dn/00pll/btsFKRuX0MP/JWsMtpD4FKqoGnk6J4KIcK/img.png)
일단 첫번째 반복문을 만들어 주자 food[0]은 물이니까 당연히 i는 1부터 시작한다.
![](https://blog.kakaocdn.net/dn/cmTjKv/btsFJnnP6A4/WLHKGFVKnZ9lKYTEXBf2u1/img.png)
두번째 반복문도 만들어준다 특이하게 j는 0부터 시작해서 food[i]번째 인덱스의 절반 값만큼 반복문을 돌게된다.
![](https://blog.kakaocdn.net/dn/chfxak/btsFLpSixzm/rpgEdZ2YSVuUzRF8OY4yWK/img.png)
입출력 예를 자세히 보면 첫번째 음식이 3개가 있으니 양쪽에 1 1 이렇게 놓아진 모습이 보인다
두번째 음식이 4일때는 두번씩 22 <> 22
세번째 음식이 6개일때는 세번씩 333 <> 333
![](https://blog.kakaocdn.net/dn/wIGdG/btsFIi1zOnG/C0hJfTP2xPSZwojNyfhYe1/img.png)
그렇기에 해당 코드처럼 작성하면 answer 에는
![](https://blog.kakaocdn.net/dn/bGn8ep/btsFJ7x1AGu/lPhda6eXEe8PlKzC07PIZ0/img.png)
0을 제외한 딱 여기까지 문자열이 들어가게 된다. 자 앞부분 음식을 놓았으니 뒷부분 음식을 만드는건 쉽다
![](https://blog.kakaocdn.net/dn/ceFz3w/btsFK6yDWHc/8QU5ZAb6dtZDDVDSBQ68Z1/img.png)
이렇게 뒤집어서 넣어주고
![](https://blog.kakaocdn.net/dn/w1uRw/btsFJ4OQfY8/Kh6bwNqRXLsdttaSwIIk30/img.png)
가운데 0이 오게끔 retrun을 해주면 문제는 해결이 될꺼다
![](https://blog.kakaocdn.net/dn/dAmJz9/btsFKPqrWL1/R6HAOfGZUk0KxkzLGVvSp0/img.png)
와 정말 오랜만에 보는 녀석이다
![](https://blog.kakaocdn.net/dn/ckmcvj/btsFIxYyz6p/DRcrgsQPqm5YHEcykvu28k/img.png)
아하 answer.Reverse()녀석은 IEnumberable<char> 라는 형식이라고 한다... 다 같은 char가 아니였구나...
한참을 해매던 도중
![](https://blog.kakaocdn.net/dn/czy7F8/btsFJ8jqcjs/zkw13rVpBxmXxLWgXSFhgK/img.png)
짜란 linq에 String.Concat() 메서드를 찾아냈다.
![](https://blog.kakaocdn.net/dn/tlErP/btsFJkED1jL/COsYqReZwP30PPdtyRTwkk/img.png)
String.ConCat은 다양한 오버로드를 제공하는데
![](https://blog.kakaocdn.net/dn/bNORiD/btsFJ7rhbhO/3Fo1WFVKjbrJJqkMjxrwzK/img.png)
![](https://blog.kakaocdn.net/dn/bkZEAR/btsFKLatuRN/3djBsSKsaKFMkTZiScK89K/img.png)
이녀석을 사용할 수 있을꺼 같다
바로 달려가자
![](https://blog.kakaocdn.net/dn/Giois/btsFJ4uxTlH/eJGTOIOTObTcE7B0DqCNR0/img.png)
내 생각이 맞았다 Concat을 활용해서 오류난 부분을 고칠 수 있다.
![](https://blog.kakaocdn.net/dn/CFf3A/btsFK6rQSyH/xJzRKUnAaJJETszYMQ0CMk/img.png)
짜란
오늘은 재밌는 알고리즘 문제 하나를 풀어보았다.
지금까지 풀었던 문제중 가장 설명이 긴 문제인거 같기도하구 설명을 읽어 내려가는데 하나도 눈에 들어오지 않아서
더 힘들었던거 같다 + 생각대로 풀리지 않고 발생한 오류까지
그래도 새로운 메서드 하나를 알았으니 그걸로 퉁치자!!
3월 12일 TIL은 여기서 마치도록 하겠다
'내일배움캠프' 카테고리의 다른 글
240314-TIL (0) | 2024.03.14 |
---|---|
240313-TIL (0) | 2024.03.13 |
240311-TIL (0) | 2024.03.11 |
240308-TIL (0) | 2024.03.08 |
240307-TIL (0) | 2024.03.07 |