본문 바로가기

분류 전체보기58

2023 숙명 AWS Streamlit 해커톤 참가 후기: Team.오데로_가야하죠? 숙명 AI / BigData AWS Streamlit Hackathon에 참가하기까지이름이 왜이렇게 긴건가요? → .. 저도 정확한 이번 해커톤의 이름을 잘 모르겠습니다.... 모두가 부르는 명칭이 달랐습니다 ㅎㅎ팀 '오데로 가야하죠?'의 구성 과정 저는 같은 동아리(APPS😍)에 소속된 동기가 디코에 정보를 알려주어 처음 이 해커톤을 알게 되었습니다. 저에게 좋은 경험이 될 수 있을 것이라 확신했고, 선착순 모집이라고 알고 있었기에 다른 동아리원분과 저를 주축으로 빠르게 팀원을 구하기 시작하였습니다. 어쨌든 한배를 타게 될 팀원을 구하기 위해서 꽤 고심했지만, 같이 주축이 되어주었던 친구가 AWS, 데이터 분석 경험도 있었기에 어렵지 않게 각 자리에 맞는 팀원을 모집할 수 있었습니다. 구하는 과정에선 .. 2023. 9. 24.
2023 배리어프리 앱 개발 콘테스트: 계획발표회까지의 여정 지난주 화요일(8/1)과 수요일(8/2) 1박 2일동안 '배리어프리 앱 개발 콘테스트' 공모전의 교육 캠프에 참가하였습니다. 서류부터 면접평가까지 통과한 뒤의 쾌거였기에 전날 계획발표회의 스크립트를 준비하면서도 정말 설렜던 것 같습니다. 원래는 계획발표회 결과가 모두 나온 뒤, 후기글을 작성하고 싶었지만, 1박 2일 동안의 교육캠프에서 배웠던 점, 느꼈던 점을 잊고싶지 않아 급하게 후기부터 작성합니다.😁 아래는 이번 공모전의 일정입니다. 서류심사, 면접심사, 교육캠프, 계획발표회까지의 후기를 간단하고도 자세하게(?) 정리해보고자 합니다. 2023 06 08 서류 심사 가도 가도 끝이 없는 아이디어 기획! 이번 공모전에서 제일 힘들었던 점은 아이디어 기획이었습니다. 무엇보다도 아이디어 공모를 시작한 4월 .. 2023. 8. 6.
2023 SWING 교육&해커톤 참가 후기 2023 숙명여자대학교 SW중심대학사업단 - SWING 교육&해커톤 with LONDON 참가 후기 230710~230714 SWING 교육&해커톤 참가 후기 지난 5일동안 숙명여자대학교 SW중심대학사업단에서 주최한 SWING 교육&해커톤에 참가하였습니다. 사실 주로 서버 중에서도 스프링부트 공부만을 해왔기 때문에, 데이터-아두이노톤은 처음 참가해보았고, 교육 과정이 포함되어 있었기에 거리낌없이 참가 신청을 하였습니다. 신청할 때는 그저 데이터 전처리 및 아두이노 역할을 맡을 것이라 생각하였으나, 제 역할은 실제로 굉장히 많이 바뀌게 됩니다. 0710 첫 번째 날은 OT를 진행하였습니다. 팀 매칭 시간이 있었고, 간단한 교육을 들은 뒤 팀과의 친목활동이 있었습니다. 저는 너무나 심적으로 힘들었던 SW 중.. 2023. 7. 18.
2023 SW 중심대학 해커톤 참여 후기 - Team.DustDrive !! 개인적으로 가장 기억에 남는 해커톤이라 너무 늦었지만 지금이라도 후기를 천천히 작성합니다. 06/28 SW중심대학 해커톤은 교내에서 자기소개서를 통해 선발되어 참여하게 되었습니다. 첫날엔 가장 기대되고, 무서웠던 시간이 팀 매칭 시간이었습니다. 팀 매칭 방식은 아이디어 기획자가 큰 종이로 자신의 아이디어를 붙이면 관심 있는 개발자, 혹은 디자이너들이 팀에 들어가고 싶다는 의사 표현을 합니다. 기획자는 자신이 생각한 아이디어에 맞게 개발자들을 선발하여 팀을 결성합니다. 제가 처음 접해보는 방식이었기에 조금 낯설어서 매칭 시간에 저를 충분히 어필하지 못했던 것 같습니다. 빠르게 팀에 들어가지 못했고, 이리저리 방황하다 지금의 팀장님께서 연락을 가장 먼저 주셔서 겨우 팀에 들어가게 되었습니다. 저희팀의 주제는.. 2023. 7. 18.
[Algorithm] Week 7. 다이나믹 프로그래밍 다이나믹 프로그래밍 중복되는 연산을 줄이자 어떤 문제는 메모리 공간을 약간 더 사용하면 연산 속도를 비약적으로 증가시킬 수 있는 방법이 있음. 대표적인 방법이 다이나믹 프로그래밍 ex) 피보나치 수열 재귀함수를 통해 구현한 피보나치 수열 fibo(x) 함수에서 x가 커지면 수행 시간이 기하급수적으로 늘어남. 시간복잡도: O(2^n) def fibo(x): if x == 1 or x == 2: return 1 return fibo(x - 1) + fibo(x - 2) print(fibo(4)) ==> 이때 사용해야 할 방법? 다이나믹 프로그래밍 다이나믹 프로그래밍 조건 큰 문제를 작은 문제로 나눌 수 있다. 작은 문제에서 구한 정답은 그것을 포함하는 큰 문제에서도 동일하다. 메모이제이션(캐싱) 기법을 사용.. 2023. 2. 14.
[Algorithm] Week 6. 이진 탐색 범위를 반씩 좁혀가는 탐색 순차 탐색 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 방법 def sequential_search(n, target, array): for i in range(n): if array[i] == target: return i + 1; print("생성할 원소 개수를 입력한 다음 한칸 띄고 찾을 문자열을 입력하세요") input_data = input().split() n = int(input_data[0]) target = input_data[1] print("앞서 적은 원소 개수만큼 문자열을 입력하세요. 구분은 띄어쓰기 한 칸으로 합니다.") array = input().split() # 순차 탐색 수행 결과 출력 print(seq.. 2023. 2. 7.
[Python 문법] sum(), count(), map(), zip() 함수 정리 문법 정리 sum() sum(덧셈할 것, 처음에 더할 것) 만약 여기서 처음에 더할 것을 [ ] (빈 리스트) 로 준다면? (두번째 인자의 default값이 0이므로 만약 두번째 인자를 [ ] 로 주지 않으면 error발생함.) array = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]] print(sum(array, [])) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 즉 두번째 인자에 [ ] 를 줌으로써, 리스트 연산을 명확하게 알려주는 것! [ (두번째 인자) ] + [1, 2, 3] + [4, 5, 6] + [7, 8, 9] + [10, 11, 12] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] cou.. 2023. 2. 5.