CodingTest
25 posts
99클럽 코테 스터디 16일차 TIL

프로그래머스 코딩테스트 문제 👉 모음사전 문제 링크 🌱 전체 코드 정답 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 🤦‍♀️ 처음 제출했을 때의 제출내역이 기록에 안남아서 .. (아마 틀려서 그런 듯) 코드가 없어졌다. 기억을 대충 꺼내보자면,, 정답 코드에서는 경우의 수를 사전 순에 맞게 계산을 해준거라면, 처음 짠 코드에서는 앞의 경우의 수를 다 계산해서 더했다고 해야하나 .. 일단 ㅠㅠ 오늘 TIL 시간이 조금 늦어서 ..! 회고를 짧게 쓸 수 밖에 ㅠㅠ 완탐 관련해서 조금 더 공부를 해야겠다고 느꼈다. 오늘 배운 것: 부족함. 프로그래머스 코딩테스트 문제 🌱 전체 코드 정답 코드 💬 오늘의 회고

99클럽 코테 스터디 15일차 TIL

프로그래머스 코딩테스트 문제 👉 뒤에 있는 큰 수 찾기 문제 링크 🌱 전체 코드 정답 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 🤦‍♀️ 처음에는 내가 좋아하는 큐로 돌렸는데 시간초과가 났다. 왠지 술술 짜여진다 싶었는데 … 제한사항 4 ≤ numbers의 길이 ≤ 1,000,000 1 ≤ numbers[i] ≤ 1,000,000 제한사항 확인 꼭 하기 .. ㅠㅠ deque로 돌리면 다음의 큰 값을 찾을 때까지 계속 돌려야된다. 그리고 만 봐도, 5에서 6까지 두 번의 반복을 해야되는데, 3의 순서에서도 한번 또 같은 것을 반복한다. 그럼 3번의 손해가 생긴다… 틀린 코드🥲 오늘 배운 것: 오늘의 사담: 오늘 이력서 특강을 들었는데, 내가 여태 쓴 서류는 서류도 아니었다는 것을 느꼈다. 다른 사람들의 이력서를 직접 구경해보니, 정말 깔끔하고 정리가 잘 되어있어서 놀랐다. 그 와중에 단점 피드백 하시는 거에 더 놀라버린 이력서도 몇 번 넣은 상태에서 보니…

99클럽 코테 스터디 14일차 TIL

프로그래머스 코딩테스트 문제 👉 기능개발 문제 링크 🌱 전체 코드 틀린 코드 입니다. . … . . 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 🤦‍♀️ 도대체 … 뭐가 문제인데 …? 자바 미들러 분들한테 슬쩍 가서 여쭤봤는데 아직 푸는 중이라고 하셔서 .. ㅜㅜ 처음에 며칠 걸리는지 세는 deque 구성은 바로 했는데, while문 부터 막혔다. 계속 deque range 초과 떠서 .. if문 넣고 이것 저것 하다보니 복잡해지고, while문은 무한 루프로 바꾸고, 그 안에서 break하게 만들었다. 그니까 결론은 처음 계획한 거랑 완전 다르게 흘러갔다는 뜻 .. 그리고 테스트 11을 결국 못 풀었다는 뜻 .. 그래서 .. 다른 사람의 풀이를 볼 수도 없었다는 뜻 .. 그럼 이만 … 오늘의 사담: 🥲 매번 스터디를 집 앞 카페에서 하는데 오늘 컨디션 난조로 .. 집에서 했다. 집에서 하니까 뭔가 집중이 잘 안되는 느낌 … 그리고 일단 논문 리젝 ^^ 이라 해야…

99클럽 코테 스터디 13일차 TIL

프로그래머스 코딩테스트 문제 👉 이진변환 반복하기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 아주 아주 깔끔하게 거의 한방에 풀었다. 비기너 문제 일지도 … ? 다른 사람의 풀이: 프로그래머스 다른 사람 풀이 중 ‘안강민’ 님의 코드를 보았다. 제일 많은 좋아요 수는 아니지만, 낭만있게 이진수 구하는 함수를 직접 구현하였다. 이건 사담인데, 재작년 초 부터 연구실에서 파이프라인을 하나 만들기 시작했다. 작년 여름 쯔음 완성이 되었는데 그 동안 함수 파라미터, 함수 이름, 함수가 없어짐 .. 등의 다양한 이슈가 있었다. 파이프라인 수정해서 고쳐쓰는 건 나의 몫 … ^^ 가끔 파라미터 늘려줘서 설정 값의 다양성을 확보하는 건 좋았으나 .. 함수 이름이랑 파라미터 이름 자꾸 수정하지 마세요 🥲 그리고 패키지 이름도 바뀌고, 패키지 내의 함수를 다른 곳으로 이동을 한다던가 .. 🤬ㅎㅎ 아무튼 이런 일이 있어서, 함수를 사용할 때도 그냥 대충 …

99클럽 코테 스터디 12일차 TIL

프로그래머스 코딩테스트 문제 👉 덧칠하기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 어제 올린 글 가독성이 굉장히 떨어지는걸 .. 배포하고 알아버렸다.. 정신없이 쓰다보니 그렇게 됐네요. 오늘 푼 덧칠하기 문제 처음에 보고, dictionary로 value에 칠하면 1, 안칠하면 0 으로 놓고 풀려고 했다. 이런 식으로, 풀려고 했는데 시간초과가 걸려서 중간에 생각을 바꿨다. 근데 다른 사람 풀이에 비슷하게 푼 사람이 있네 ..? 딕셔너리 형태는 아니고 리스트로 순서에 따라 0, 1로 구분만 주는게 더 나은 것 같다. 오늘 배운 것: 오늘 논문 figure 수정하는데, 데이터 한번 파라미터 잘못 설정해서 돌린 것 때문에 한 2시간 정도 낭비했다. 결국 밤 9시 넘어서까지 어떻게 다 돌리긴 했는데.. 다음부터는 제발 파라미터 설정 잘 하고 확인해보고 돌려야겠다 … 목요일 심사 마지막 신청일이라 내일 논문 진짜 마무리 해야해서 … 시…

99클럽 코테 스터디 11일차 TIL

프로그래머스 코딩테스트 문제 👉 괄호 회전하기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 문제의 내용은 주어진 괄호리스트에 대해서 회전을 하면서 괄호가 맞게 되었는지 카운트를 하는 것이다. 우선 괄호가 열고 닫히기 위해서는 주어진 괄호리스트의 길이가 짝수여야 하기 때문에 연산량을 줄이기 위해서 길이가 짝수인지 먼저 확인을 하였다. (홀수면 return 0) 짝수인 리스트는 deque로 만들어서 deque의 왼쪽부터 괄호 한 개씩 뽑아서 popleft(), append()를 하게 만들어서 회전을 시켰다. 1회전마다 괄호가 제대로 되었는지 확인을 해야한다. 이 때, 제일 첫 번째 괄호가 닫힌 괄호가 나오면 바로 return 0을 한다. 만약 열린 괄호가 나오면, 그 다음에 닫힌 괄호가 쌍이 맞는 지 확인을 하고, 쌍이 맞으면 deque에서 제거를 한 다음, 남은 것들을 다시 체크한다. (열렸는지 부터 ..) 근데 여기서 열린 괄호가 나온 …

99클럽 코테 스터디 10일차 TIL

프로그래머스 코딩테스트 문제 👉 두 개 뽑아서 더하기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 오늘도 deque를 사랑하는 나.. 아마 시간복잡도는 O(n(n-1))..? 마지막에 sorted 안쓰고 제출한거 빼고는 잘 푼 것 같당. .. . 근데 제출하고 이거 쓰다가 combination 함수로 깔끔하게 푼 사람들 보고 새로운 함수 알아감니다 .. 오늘 배운 것: combination 함수(시간복잡도 O(nCk)) 이 문제에서는 O(nC2) = O(n(n-1)) 함수 선언 및 사용 오늘의 사담: 졸업 논문 쓰기 전 워밍업 ..! 졸업논문 쓰고 있는 것도 심사 후에 .. 논문 작성한 총 과정을 블로그에 남길 예정 (˘▾˘) 프로그래머스 코딩테스트 문제 🌱 전체 코드 💬 오늘의 회고

99클럽 코테 스터디 9일차 TIL

프로그래머스 코딩테스트 문제 👉 문자열 내 마음대로 정렬하기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 초반에 풀었던 코드는 아래에 있다. 설명을 하자면, 입력받은 strings를 sort by x[n]으로 놓고 정렬까지는 했는데, 그 다음에 내가 정한 n번째 알파벳이 여러 단어에 겹치면 사전 순으로 정렬을 해줘야되는데 이게 까다로웠다. 하 .. 그래서 결국 코드 갈아엎어버리고 다시 짰다. 오늘 배운 것: lambda의 사용.. 을 잘하자 라는 교훈 오늘의 사담: 분명 주말이 왔다고 행복해하던게 방금 전인거 같은데 왜 토요일이 끝났는지요? 왜 일요일인지요? 불행 중 다행인건 이번 주 수요일 선거로 빨간 날 !! (근데 논문 써야됨) 프로그래머스 코딩테스트 문제 🌱 전체 코드 💬 오늘의 회고

99클럽 코테 스터디 8일차 TIL

프로그래머스 코딩테스트 문제 👉 할인 행사 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 이중 for문을 두번이나 써서 풀었다. … . 시간초과 안난게 신기할 정도 … 이중 for문 두번 썼으니 O(2n^2)을 더 넘는 것 같다. 왜냐면 그 내부에서 슬라이싱까지 했으니 .. ㅠ 스터디에서 collections의 Counter함수를 쓰셨다고 해서 찾아봤다. 오늘 배운 것: Counter 함수 오늘의 사담: 맨날 내일 학습할 것은 무엇인지 칸에다가 사담 주저리 떨어서 그냥 사담으로 바꿨다. 어떻게 보면 일기같은 ..~ 오늘 드디어 교수님께서 논문 심사 신청 허락을 하셨다 !!! 드디어 .. 드디어 .. dobby is free… 까진 아니고 그래도 자유의 경계선까지는 왔다 … 이제 데이터 세트 하나만 더 추가하면 돼 !!! figure 수정만 하면 돼 !!! biological한 내용 추가만 하면 돼 !! 저널만 쓰면 돼 !!! 프로그래머스 …

99클럽 코테 스터디 7일차 TIL

프로그래머스 코딩테스트 문제 👉 기사단원의 무기 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 오늘 하루종일 논문에 매달렸는데 발전은 없었다. ..^^ 내일 혼나고 수정하지 모 .. ~ 어차피 혼날 거 그냥 문제풀고 집 갈래 .. 라는 마인드로 문제 풀었다. 시간초과 날거 같았는데 역시나 ,, 리스트로 풀어야되나 ..? 하다가 제곱근이 int면 홀수개고 아니면 짝수개인데 라는 아이디어에서 코드를 짰다. 제곱근까지만 for문 돌려서 그동안의 약수는 2씩 더하고, 제곱근이 딱 int면 +1, 아니면 그냥 거기서 끝으로 짜니까 시간초과 안났다. 처음에 푼 코드 ㅎㅎ 이렇게 풀면 무한으로 굴러갈거 .. 알고 있었잖아 … ! 내일 학습할 것은 무엇인지: 논문 쓰기 … 오늘 진짜 너무너무 피곤하다 … EM을 이용한 GMM 수식 넣을지 고려.. kneighbors 좀 더 읽어보고,, 루베인 알고리즘 … 코드에 왜 있는지 누가 설명좀 ㅠㅠ (는 나) 프…

99클럽 코테 스터디 6일차 TIL

프로그래머스 코딩테스트 문제 👉 피보나치 수 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 당연하다는 듯이 재귀함수로 풀고 오류가 났다! 시간초과 때문에 정의한 fibo 함수 안에 나눗셈을 넣고 별 짓을 다 했는데 계속 오류가 나서 .. 그냥 딕셔너리로 풀어볼까? 싶어서 일단 그냥 짜봤는데 바로 성공할 줄은 …! 원래 오늘 논문 좀 쓰고 오후에 문제풀이 하려고 했는데, 연구실 출근해서 머리 비울겸 푸니까 괜찮은 것 같다! 그래서 논문은 언제 쓰지 … 추가 (오후 11:12 ..) 처음으로 스터디 톡방에 TIL 올려봤는데 피드백 해주셔서 감동받았다 … 중간 카톡내용에 -1일 경우가 아니라 -1이 아닐 경우라고 정정해주셨다. 그래서 다시 풀어본 재귀 코드!!! 놀랍게도 재귀로도 정답이 나올 수 있었다!! 내일 학습할 것은 무엇인지: 내일도 프로그래머스 한 문제 풀고 TIL 작성하기, 자소서 정리하기! 프로그래머스 코딩테스트 문제 🌱 전체 …

99클럽 코테 스터디 5일차 TIL

프로그래머스 코딩테스트 문제 👉 햄버거 만들기 문제 링크 👉 둘만의 암호 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 오늘 솔직히 스터디 할 시간이 전혀 없는데.. 그냥 무작정 참여했다. 졸업논문 내일 미팅 진행해야해서 discussion을 작성해야 하는데.. 심지어 introduction도 ref를 다 안달았다. 내일 씨게 혼날 예정 .. 그래도 오늘 figure랑 result 부분은 싹다 마무리 했다. 그래도 바뀌겠지만 … 오늘 스터디 문제 얘기는 안하고 딴 소리 중이긴 한데 오늘 스터디 문제가 제법 쉬웠다. 근데 둘만의 암호 저렇게 푼거 조금 부끄러울지도… 다들 아스키코드로 변환하셨던데 나는 그냥 무작정 알파벳 리스트에 때려박기!! ㅎㅎ 이러다가 이제 코테 가가지고 알파벳 하나 빼먹어서 디버깅 지옥에 갇혀봐야 정신을 차리지 … 그래도 그냥저냥 풀었다. 나름 스터디원들이랑 자기소개도 하고, 문제에 대해 이야기도 해보는 시간 가지면서 …

99클럽 코테 스터디 4일차 TIL

프로그래머스 코딩테스트 문제 👉 바탕화면 정리 문제 링크 👉 가장 먼 노드 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 미들러 문제 ‘바탕화면 정리’ 한 문제 풀고 챌린저 문제 ‘가장 먼 노드’ 풀었다. 일단 바탕화면 정리 문제도 스터디원 한분이(성함이 기억 안난다 ㅜㅜ) min max로 짧고 간결하게 잘 푸신걸 보고 앗차 싶었ㄷㅏ .. 혼자 if else문 남발하면서 이상하게 풀어버린 .. 그리고 deque를 너무 좋아해버린 .. 링크가 2개씩 있는 줄 모르고 ,, 그냥 눌렀는데 얼떨결에 둘 다 2번을 풀었다. 당구 연습도 풀려고 했는데 .. 문제 접근을 잘못 했다. 스터디에서 비유님 설명보고 아차 싶었다. 아이디어 없이 허겁지겁 풀었더니 빙빙 돌아가고 있었다 .. 근데 비유님 코드 짜는게 상당히 깔끔하고 비트연산자라던가 포인터라던가 사용하는 솜씨가 대단하셨다. 둘 다 예전에 c언어 할 때 쓰고 잊고있었는데 코딩테스트 공부를 하면 할 …

99클럽 코테 스터디 3일차 TIL

프로그래머스 코딩테스트 문제 👉 최댓값과 최솟값 문제 링크 🌱 전체 코드 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 오늘 공문처리, 논문 등의 이슈로 늦게 퇴근해서 늦은 저녁을 먹었다. 근데 그 와중에 운동 30분 하고오니.. 오후 10시반이 넘었다. 오늘 안에 TIL 쓸 수 있을까 했는데 일단 오늘의 미들러 문제가 너무 쉬웠다. 진심 한 5분컷 한거같다. 근데 시간복잡도 계산을 안하고 그냥 막 풀었는데 테케 다 0.0x초로 나와서 .. 일단 바로 블로그 적는 중.. 내일은 퇴근 빨리 해서 공부 좀 해야겠다. 매일 너무 늦은 퇴근때문에 스터디도 최소한으로 하게 되는데 .. 반성 ㅜ 무엇을 새롭게 알았는지: 오늘 이렇게 바쁜 와중에도 우아한테크블로그 우연히 들어가서 글 몇개 읽어보다가 해보고싶은 토이 프로젝트가 생겼다. 뭔지는 .. 노션에만 적어놨다. 언제할지 모르니까 ㅎㅎ 빨리 졸업논문 마무리하고 내가 하고싶은 플젝 .. 하고싶다 ㅠㅠ 너무 여유가 없는 .. …

99클럽 코테 스터디 2일차 TIL

💬 오늘의 회고 깃허브 블로그 글을 공유하고 의견을 나누기 위해서는 utterances를 적용해야겠다는 생각이 들었다. 그동안은 나 혼자만의 기록용이었는데 확실히 혼자하니까 나태해지는 것 같다. 그래서 오늘은 댓글기능을 적용해볼 것이다. 일단 TIL 쓰고 ㅎㅎ 오늘도 스터디에서 문제들이 올라왔다. 스터디 아닌 날도 올려주시는 줄 몰랐다. 오히려 좋아 .. 내가 골랐으면 문제 쇼핑하고 있었을 것 같다. 아직은 미들러만 풀려고 한다. 일단 논문쓰고 자소서 서류들 넣느라 정신이 좀 없는 상태이다. 오후 6시 퇴근인데 요즘 논문때문에 오후 7시 퇴근이면 일찍 퇴근하는 편 .. ㅠㅠ 교수님께서 일단 졸업논문 먼저 완성하라고 하셔서 졸업논문에 집중하는 중이다. 팟팅.. 무엇을 새롭게 알았는지: 네이버 코테봤을 때, ‘해시맵으로 푸는거죠?’ 다들 이 말을 했다. 나는 해시맵이 뭐지 .. 이러고 조용히 있었다. 근데 ? 파이썬에서는 해시맵 = 딕셔너리였다. 이래서 기본개념이 중요한거 같다. ==…

99클럽 코테 스터디 1일차 TIL

💬 첫날이니까 서론 며칠 전 네이버 코딩테스트 보고 심각성을 깨달았다. 한 2년 전쯤 대학원 갈지 취업할지 고민하면서 알고리즘 공부하다가 결국 대학원에 납치 된 이후로 알고리즘 공부를 아예 안했다. 근데 눈 떠보니 졸업논문 쓰고있고, 취업해야하고.. 예전에 한 기억 살려서 코테봤다가 겨우 1솔했다. 이번에 쉬웠다해서 1차 멘붕.. 시간복잡도 고려안해서 2차 멘붕.. 아무튼 그렇게 코테 공부해야지 생각했는데 마침 스터디 한다길래 냅다 참여. 심지어 무료에다가 열심히하면 선물도 줌 ..!! 아무튼 그래서 신청을 하려고 보니 비기너, 미들러, 챌린저 있길래 일단 네이버 코테의 쓴 맛을 보고 비기너로 신청을 하고 문제를 봤는데 .. 백준 단계 별 첫 문제 수준이라 미들러로 넘어가서 풀었다. 💬 오늘의 회고 어떤 문제가 있었고, 나는 어떤 시도를 했는지: 처음에 성격 유형에 따라 분류할 때, 입력 데이터에 정해진 알파벳이 있는 줄 모르고 모든 알파벳을 고려해서 코드를 짜다가 .. 뭔가 이상…

백준 15649번 N과 M(1) / python, 파이썬

👉👉 15649번 문제 바로가기 👉👉 reference: 코드1 👉👉 reference: 코드2 👉👉 reference2: 백트래킹 👊 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 👉 입출력 입력: 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력: 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 💬 풀이 c언어로 DFS를 배웠다지만 … 전공수업에 따라가기 벅차서 제대로 사용할 줄도 몰랐다. 백트랙킹 첫 문제여서 접근 방식 조차 몰라서 그냥 검색 해버렸다. 재귀함수 && 백트래킹을 이용하는 문제이다. 백트랙킹이란, 해결책에 대한 후보를 구축해 나아가다 가능성이 없다고 판단되는 즉시 후보를…

백준 18870번 좌표 압축 / python, 파이썬

👉👉 18870번 문제 바로가기 👈👈 👊 문제 수직선 위에 N개의 좌표 X1, X2, …, XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X’i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, …, XN에 좌표 압축을 적용한 결과 X’1, X’2, …, X’N를 출력해보자. 👉 입출력 입력: 첫째 줄에 N이 주어진다. 둘째 줄에는 공백 한 칸으로 구분된 X1, X2, …, XN이 주어진다. 출력: 첫째 줄에 X’1, X’2, …, X’N을 공백 한 칸으로 구분해서 출력한다. 💬 풀이 “Xi > Xj를 만족하는 서로 다른 좌표의 개수” 라는 문장의 말 뜻을 이해 못해서 도대체 뭔 소리인가 싶었다. 여기서 국어를 못한다는 것이 드러나는 부분 … 다양한 문제를 접함으로써 문제의 의도를 파악하도록 해야겠다. 우선 sys를 통해 input함수를 대신하여 입력받음을 통해 시간복잡도를 줄일 수 있다. input()과 달리 …

백준 4948번 베르트랑 공준 / python, 파이썬

👉👉 4948번 문제 바로가기 👈👈 👊 문제 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다. 예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23) 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램을 작성하시오. 👉 입출력 입력: 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 케이스는 n을 포함하는 한 줄로 이루어져 있다. 입력의 마지막에는 0이 주어진다. 출력: 각 테스트 케이스에 대해서, n보다 크고, 2n보다 작거나 같은 소수의 개수를 출력한다. 제한: 1 ≤ n ≤ 123,456 💬 풀이 처음에 일반적인 소수문제와 비슷하…

백준 2941번 크로아티아 알파벳 / python, 파이썬

👉👉 2941번 문제 바로가기 👈👈 👊 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다. 👉 입출력 입력: 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 ’-’, ’=‘로만 이루어져 있다. 단어는 크로아티아 알파벳으로 이루어져 있다. 문제 설명의 표에 나와있는 알파벳은 변경된 형태로 입력된다. 출력: 입력으로 주어진 단어가 몇 개의 크로아티아 알파벳으로 …

백준 2908번 상수 / python, 파이썬

👉👉 2908번 문제 바로가기 👈👈 👊 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오. 👉 입출력 입력: 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다. 출력: 첫째 줄에 상수의 대답을 출력한다. 💬 풀이 보자마자 리스트로 입력받아서 리스트 reverse해서 역순으로 나열한 후, 다시 join으로 합친다음에 int형으로 바꿔…

백준 1152번 단어의 개수 / python, 파이썬

👉👉 1152번 문제 바로가기 👈👈 👊 문제 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 👉 입출력 입력: 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다. 출력: 첫째 줄에 단어의 개수를 출력한다. 💬 풀이 문제 잘못 읽고 한 단어가 여러 번 등장하면 한번으로 쳐야되는 줄 알았는데, 등장한 횟수 모두 세는 거였다. 근데 코드가 너무 짧고 문제도 쉬워서 설명할게 없다.. 문제 잘못 읽음. set(sent)해서 같은 단어는 한번만 세어야 하는 줄 알고 뻘짓함. 처음에 시간초과 나옴.. 을 통해 문장을 공백 단위로 끊어서 입력받는다. upper도 안써…

백준 1157번 단어 공부 / python, 파이썬

👉👉 1157번 문제 바로가기 👈👈 👊 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 👉 입출력 입력: 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력: 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. 💬 풀이 처음에 딱 문제보고, 아 금방 풀겠네 싶었던 내 오산… 대소문자 구분안하고 빈도수 구하는 것과 최댓값을 출력하는 것이 아닌, 알파벳(그것도 대문자)를 출력한다는 것을 구현하면서 뇌정지 조금 왔다.🤯 우선 입력값을 받을 땐, 을 통해 대문자로 모두 전환을 시켜준다. 그리고 을 통하여 입력값들의 중복값들을 제거한 뒤 리스트로 만들어준다. data_list(중복 업는 리스트)의 각 알파벳들을 dat…

백준 2675번 문자열 반복 / python, 파이썬

👉👉 2675번 문제 바로가기 👈👈 👊 문제 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code “alphanumeric” 문자만 들어있다. QR Code “alphanumeric” 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ$%*+-./: 이다. 👉 입출력 입력: 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 반복 횟수 R(1 ≤ R ≤ 8), 문자열 S가 공백으로 구분되어 주어진다. S의 길이는 적어도 1이며, 20글자를 넘지 않는다. 출력: 각 테스트 케이스에 대해 P를 출력한다. 💬 풀이 문제의 T, R, S를 모두 입력받아야 하는데, 우선 T의 수를 알아야 얼마나 반복할 지를 알기 때문에 으로 T의 값을 받는다. 그 후, f…

백준 10809번 알파벳 찾기 / python, 파이썬

👊 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 👉 입출력 입력: 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 출력: 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, … z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. 💬 풀이 우선 단어 S의 입력을 string으로 받은 후에, for문을 이용하여 문자열의 각 문자가 알파벳에 있는지 찾도록 한다. 이때 소문자 알파벳은 리스트로 구성하며, 리스트의 범위 값을 아스키코드의 숫자 범위를 통해 지정한다. 여기서 find함수는 index함수와 비슷하지…