Potato
안녕하세요, 감잡니다?🥔 ^___^ 😺 github 바로가기 👉🏻
반응형

New ꒰◍︎⍢︎◍︎꒱۶

more

[python] 백준 문제풀이를 위한 입출력 방법 (sys.stdin.readline(), input() 차이점)

1️⃣ 입력값 한 개- input()은 기본적으로 문자열로 받는다.a = input()# 입력: hello, 출력: hello (string)b = int(intput())# 입력: 1, 출력: 1 (int형)2️⃣ 입력값을 각각 변수에 넣어주기 # 정수a, b = map(int, input().split())# 문자열a, b = input().split()3️⃣  입력값을 1차원 배열로- 한 번에 입력받고 잘라서 1차원 배열에 넣어주는 방법- split(): 공백을 기준으로 문자열을 잘라 배열에 넣음. 괄호 안에 자르는 기준을 넣어줄 수 있음.# ✅ string인 경우a = input().split() #hello my name is gamzab = input().split(':') #hell..

Algorithm 2024.06.15 0

[Github] 맨날 까먹어서 정리하는 git repo 생성 방법, github 연동 방법

지이이이인짜 오랜만에 포스팅. 회사를 다니면서 개발을 1년 반정도 손을 놓다보니, 개발을 하고싶을 때가 다 있다. 특히,, 정말 드물게 알고리즘 공부를 하고싶어졌다. (문제를 풀면서 심심풀이땅콩 놀이를 하고싶달까)이제는 swift와는 멀어진 나이기에, python으로 새롭게 준비해보려고 프로젝트를 생성하는데, github와 연동하는 방법을 까먹어서 아예 포스팅으로 박제해버리려고 한다.나는 보통 아래와 같은 순서대로 환경구성을 한다. 뭐 로컬에서 먼저 레포를 생성하거나, 다른 방법도 많겠지만 난 이게 젤 편했다.github에서 repo 생성git clone으로 해당 repo 로컬에 복제github 연동 확인 ⚒️ 개발환경- Pycharm CE - python version 3.10.9- git client..

Git 2024.05.04 0

[Vue.js] (1) 시작하며 - 개발환경 셋팅 (Github 연동까즤)

오늘부터 Vue.js를 활용해서 앱을 만들기까지,, 열심히 공부를 해보려고한다. SI회사로 취업하게 되면서 iOS를 손에서 놓게 되기도 했고, 개발과는 조금 거리가 멀어지기도 했다.(회사에서 하는 개발은 개발이 아니다 ^^) 역시 회사는 내가 원하는 개발을 하진 못하더라 ㅠㅠ 이와 관련해서 많은 현타가 왔던것도 사실이다. 이건 차차 회고해보면서 설명해보고~ 이 고민의 결론은, 결국 그냥 스스로 열심히 공부해서, 다시 나의 것으로 만드는 방법밖에! 없는 것이다. 앱개발이 재밌어서 플러터를 공부하고 싶었으나, 올해의 목표가 '업무 안정화'이기 때문에, 웹을 공부하는게 맞다고 판단했다. (회사에서 주로 웹+백엔드 개발을 담당한다.) 그래서 Vue.js로 결정! 시작해보자구 일단 나의 뷰공부 첫번째 시작은,캡틴..

Vue.js 2024.02.22 0

my Algorithm (๑˃̵ᴗ˂̵)و

more

[python] 백준 문제풀이를 위한 입출력 방법 (sys.stdin.readline(), input() 차이점)

1️⃣ 입력값 한 개- input()은 기본적으로 문자열로 받는다.a = input()# 입력: hello, 출력: hello (string)b = int(intput())# 입력: 1, 출력: 1 (int형)2️⃣ 입력값을 각각 변수에 넣어주기 # 정수a, b = map(int, input().split())# 문자열a, b = input().split()3️⃣  입력값을 1차원 배열로- 한 번에 입력받고 잘라서 1차원 배열에 넣어주는 방법- split(): 공백을 기준으로 문자열을 잘라 배열에 넣음. 괄호 안에 자르는 기준을 넣어줄 수 있음.# ✅ string인 경우a = input().split() #hello my name is gamzab = input().split(':') #hell..

Algorithm 2024.06.15 0

[백준] (Swift) 2170번 - 선긋기 (시간초과 보류, 골드5, 그리디)

아주 쉽게 풀릴줄 알고 블로그 업로드를 하지 않으려고 했는데... 시간초과가 떴다. 근데, 이것저것 찾아보고 백준을 뒤져보니, 이 문제는 뭔가 swift로 풀 수 없는 문제 인것 같다는 판단이 내려졌다. (내 스스로) ⏰ 왜 시간초과 보류? 뭔가 이 문제는 시간초과 문제를 해결할 수 없을 것이라는 판단이 섰다. 왜냐면? 1. 일단, 나는 풀이과정에 잘못된 점을 찾지 못했다. 인터넷을 찾아보니 나와 동일한 방식으로 푼 C++, python등의 모든 코드들은 통과하는 것을 볼 수 있었다. 그렇다면 swift로 풀었을때 이 풀이과정이 안된다는 것은 말이 되지 않았다. 2. 시간복잡도는 O(N)인데, 100만이 통과되지 않는 것이 이해할 수 없다. 지금까지 스위프트로 푼 문제들로 보았을 때, 1초가 주어졌다면 ..

Baekjoon 2023.05.18 2

[백준] (Swift) 1744번 - 수 묶기 (골드4, 그리디)

⚫️ 문제 https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net ⚫️ 나의 풀이 풀이 방식은 바로 생각났다. 핵심은 -는 -끼리 곱했을 때 양수가 되고, 0이 입력되는 경우 minus인 수랑 곱해주면 개이득이라는 사실! input을 minus와 0, plus로 나눠서 받았고, 배열을 따로 만들어주었다. 우선 수를 곱해주는게 그냥 더해주는 것보다는 훨씬 이득이다. 그러므로, 주어진 input의 개수가 홀수인 경우, 큰수들은 묶어서 최대 수로 만들어주..

Baekjoon 2023.05.16 0

[백준] (Swift) 2457번 - 공주님의 정원 (그리디, 골드3)

이것저것 채용 이슈 때문에 문제 풀이는 이 공주님문제는 4월말에 풀기 시작했지만 ㅋㅋㅋㅋ 풀이를 완료한 시점은 약 3주 후인 5월 중순,,,, (아 공주님 진짜 뿌셔버리는게 목표였는데 드디어 뿌셔서 없애버릴 수 있었다.. 다신 안풀어 이거) 자소서쓰고 최종면접보고 이것저것 하느라 코딩테스트에 집중하지 못했다. 다시 푸니까 재밌네? 그리고 확실히 refresh하고 다시 문제를 접하니까 더 잘풀리는 기분이다. 앞으로 다시 화이팅하자!! ⚫️ 문제https://www.acmicpc.net/problem/2457 2457번: 공주님의 정원첫째 줄에는 꽃들의 총 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 각 꽃이 피는 날짜와 지는 날짜가 주어진다. 하나의 날짜는 월과 일을 나타내는 ..

Baekjoon 2023.05.15 1

[백준] (Swift) 11501번 - 주식 (실버2, 그리디)

실버2여서 쉬운 문제였지만, 왜 실버2야? 라는 말이 한번 툭 튀어나왔다 ㅎㅎ 짧지만 그래도 고민을 조금 했던 문제기 때문에 작성해놓음! 실버2답게, 그리고 그리디 답게 풀이를 생각해내는 순간 그닥 어렵지는 않았다~ ⚫️ 문제 https://www.acmicpc.net/problem/11501 11501번: 주식 입력의 첫 줄에는 테스트케이스 수를 나타내는 자연수 T가 주어진다. 각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고, 둘째 줄에는 날 별 주가를 나타 www.acmicpc.net ⚫️ 풀이 1️⃣ 첫번째 시도 시간초과가 났다. 제출 시간 보면 1분전이라고 뜨는데 ㅋㅋ 1분동안 천천히 채점하더니 88%에서 시간초과가 났다. 아무래도 데이터..

Baekjoon 2023.04.25 0

[백준] (Swift) 1697번 - 숨바꼭질 (실버1, 두가지 풀이 BFS, DP)

오랜만에 포스팅하네용, 이런저런 채용준비때문에 알고리즘을 잘 못풀었던것도 사실이지만, 그동안 푼 알고리즘 문제들은 대부분 파이썬으로 풀기도 했었고 깃허브에만 남기고... 이런저런 이유로 해서 ... 업로드 하지 않았었네요! 하하하하하 다시 화이팅.. ! 🍀 ⚫️ 문제 https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net ⚫️ 나의 풀이 (두번째 푸는 것이긴 함!) 문제를 보자마자 생각난 BFS풀이방식이다. 그리고, 문제를 ..

Baekjoon 2023.04.22 2

Deep Dev

more

[Vue.js] (1) 시작하며 - 개발환경 셋팅 (Github 연동까즤)

오늘부터 Vue.js를 활용해서 앱을 만들기까지,, 열심히 공부를 해보려고한다. SI회사로 취업하게 되면서 iOS를 손에서 놓게 되기도 했고, 개발과는 조금 거리가 멀어지기도 했다.(회사에서 하는 개발은 개발이 아니다 ^^) 역시 회사는 내가 원하는 개발을 하진 못하더라 ㅠㅠ 이와 관련해서 많은 현타가 왔던것도 사실이다. 이건 차차 회고해보면서 설명해보고~ 이 고민의 결론은, 결국 그냥 스스로 열심히 공부해서, 다시 나의 것으로 만드는 방법밖에! 없는 것이다. 앱개발이 재밌어서 플러터를 공부하고 싶었으나, 올해의 목표가 '업무 안정화'이기 때문에, 웹을 공부하는게 맞다고 판단했다. (회사에서 주로 웹+백엔드 개발을 담당한다.) 그래서 Vue.js로 결정! 시작해보자구 일단 나의 뷰공부 첫번째 시작은,캡틴..

Vue.js 2024.02.22 0

[python] 파이썬 리스트 비교하기 (set 자료형 이용하기!)

들어가며 코딩테스트를 연습하고 다른사람들의 풀이를 공부하다 보면 굉장히 기초적인 부분에서 코드의 길이를 줄이고, 시간복잡도를 줄일 수 있다는 것을 느낀다. 따라서 코딩테스트에서 헷갈리지 않고 능숙하게 사용할 수 있도록 set 집합에 대해서 정리해두자! 1. 파이썬 리스트 중복 제거하기 a = [1,2,3,3,3,3,4,5,6,7,3,5,6,7] a = set(a) print(a) # 다시 리스트로 사용하고 싶다면? a = list(a) a set은 집합형태의 자료형이다. 따라서 중복되는 값이 하나의 집합에 들어갈 수 없는 특성을 사용해서 리스트 내의 중복값을 간단하게 제외해줄 수 있다. 2. 파이썬 리스트 비교하기 (교집합, 합집합, 차집합을 이용하자) 2.1 교집합 a = [1,2,3,4,5] b = ..

Python 2021.08.18 2

[python3] itertools 이터레이터를 만드는 함수 종류 살펴보기

1. Itertools 파이썬에서 제공하는 자신만의 반복자를 생성해주는 함수이다. 특정 배열이나 순열에 대한 조합을 만들어서 이를 이용하는 알고리즘 문제를 풀때 유용하게 사용된다. 효율적인 반복자를 구할 수 있다. 무한 이터레이터 / 조합형 이터레이터 / 종료 이터레이터 가 있지만, 종료 이터레이터는 너무 많으니 아래 링크로 첨부해두고, 자주 사용할 것 같은 이터레이터만 작성할 것이다. 2. 무한 이터레이터 2.1 Count() from itertools import count a=count(10,10) #-------호출---------------------- next(a) #결과 : 10 next(a) #결과 : 20 . . . count(시작숫자, 더해줄숫자) 입력해주면 무한으로 계속 규칙에 맞게 ..

Python 2021.08.04 0

CS is important!!! 🤔

more

[디자인 패턴] (iOS) MVC 패턴을 MVVM패턴으로 바꿔보기 (feat. Combine)

자, 이제 정말 귀찢어지게 들었던 MVC와 MVVM 패턴에 대해서 포스팅해보자. 주제는, MVC 패턴을 MVVM패턴으로 바꾸기!!~ 그리고 그 차이점에 대해서 직접 느껴보자 개발하는 정대리님의 유튜브 강의를 참고하면서 포스팅 작성합니다. (https://www.youtube.com/watch?v=TLX7MjtOPd0&t=873) MVC와 MVVM이 뭔지 먼저 살펴보고 드루가자 ⚫️ MVC이 뭔지 간단하게 설명해보자. Model, View, Controller로 구성된 디자인 패턴이다. 뷰를 생성하고 관련한 비즈니스 로직과 관련한 것들은 Controller가 맡는다. 각 프로세스별로 구별되어 있기 때문에 각각의 구성 요소에만 집중해서 개발할 수 있다는 것이 장점이다. Controller에서 생성된 이벤트들..

Design Pattern 2023.02.07 0

[디자인패턴] (Swift) Singleton Pattern (싱글톤 패턴 구현해보기)

코드는 아래 github에서 볼 수 있습니다! https://github.com/deslog/awesome-swift GitHub - deslog/awesome-swift: swift를 활용한 모든 공부를 모아두는 감자의 뚝딱뚝딱 요리실험실 🥔🍳 swift를 활용한 모든 공부를 모아두는 감자의 뚝딱뚝딱 요리실험실 🥔🍳👩🏻‍🍳. Contribute to deslog/awesome-swift development by creating an account on GitHub. github.com 👋 싱글턴 패턴 공부하기 전에 알아야 할 개념! 🔖 디자인패턴이란? 코드를 작성할 때 발생하는 문제들을 보다 좋은 방법으로 코드를 작성할 수 있도록 미리 형식을 정해놓는 것? 방법론? 이다! 미리 좋은 코드에 대해서 정..

Design Pattern 2023.02.06 0

[디자인패턴] (iOS) 디자인 패턴이란? 개요 및 분류 방법!

스터디를 운영하고 있습니다. 아래 깃허브 PR 내역을 보시면, 다양한 의견을 주고받은 history를 보실 수 있습니다. https://github.com/JulSaMo/CS-start/pulls 🟠 디자인 패턴 (Design Pattern) 이란 - 소프트웨어를 개발할 때 발생하는 다양한 문제에 대한 재사용 가능한 탬플릿 해결 방법 프로그래밍을 할 때 특정 상황에 적용되는 패턴을 정형화해 두면 비슷한 상황에서는 더욱 빠르게 대처할 수 있음 프로젝트에 항상 적용해야하는 것은 아니지만, 추후 재사용, 호환, 유지보수 시 발생하는 문제 해결을 예방하기 위해서 패턴을 만들어 둔 것 🔸 디자인 패턴의 특징 1. 디자이패턴은 하나의 아이디어이다. 특정한 구현이 아니다. 2. 경험을 통해 얻을 수 있다. 3. 특정..

Design Pattern 2022.09.27 0

Git

more

[Github] 맨날 까먹어서 정리하는 git repo 생성 방법, github 연동 방법

지이이이인짜 오랜만에 포스팅. 회사를 다니면서 개발을 1년 반정도 손을 놓다보니, 개발을 하고싶을 때가 다 있다. 특히,, 정말 드물게 알고리즘 공부를 하고싶어졌다. (문제를 풀면서 심심풀이땅콩 놀이를 하고싶달까)이제는 swift와는 멀어진 나이기에, python으로 새롭게 준비해보려고 프로젝트를 생성하는데, github와 연동하는 방법을 까먹어서 아예 포스팅으로 박제해버리려고 한다.나는 보통 아래와 같은 순서대로 환경구성을 한다. 뭐 로컬에서 먼저 레포를 생성하거나, 다른 방법도 많겠지만 난 이게 젤 편했다.github에서 repo 생성git clone으로 해당 repo 로컬에 복제github 연동 확인 ⚒️ 개발환경- Pycharm CE - python version 3.10.9- git client..

Git 2024.05.04 0

[CI] Builder를 Github Action에 적용하기

💬 builder가 왜 필요한가 요모조모 프로젝트를 진행할때, 역시나 갓듀나가 builder를 github action에 적용해놨었다. 빌드테스트를 해본다구? 이게 무슨의미징!!! 생각했었다. 그냥 local에서 잘 돌아가면 되는거 아녀? 하지만,, 해당 builder의 역할은 엄청났다. 프로젝트가 깨질뻔한 여러번의 위기에서 날 구해주었다. help… [Github] git conflict 해결! (feat. fork🍴) 필요할땐 수동으로 코드를 추가해주자 [Github] git conflict 해결! (feat. fork🍴) 필요할땐 수동으로 코드를 추가해주자 🌊 수없이 발생하는 xcodeproj 파일의 충돌 팀프로젝트를 진행하면, 당연하게 겪을 수 밖에 없는 xcodeproj 파일에서 또 충돌이 발생..

Git 2023.01.26 0

[CI] SwiftLint Github Action 적용기

하이! 오늘은 내가 예전부터 진짜진짜 사용해보고싶었던 Github action 적용기에 대해서 작성해볼것이다. 애플 디벨로퍼 아카데미에서 마지막 프로젝트를 진행할 때 갓.듀.나 가 github action에 lint와 빌더를 적용해줘서, pr을 날릴때마다 아주 간편하게! 나의 코드들을 확인할 수 있었다. (빌드테스트와 린트가 잘 적용됐는지!) 우선, Lint를 액션에 적용하게 되면, PR을 날릴대마다 나의 코드에서 Swift Lint 규칙이 잘 적용되어있는지 깃허브 액션에서 확인해준다! PR을 날리면, 요로코롬 댓글로 린트 Success!!! 라고 알려준다. 만약, 린트에 어긋나는 사항이 있으면, 댓글도 달리지 않고, 밑에 대왕만한 ❌표시가 뜨게 된다. 🟣 적용하고 좋았던 점 프로젝트 내부에 쓸데없는 w..

Git 2023.01.26 0
반응형