썸네일 프로그래머스 데이터 분석 데브코스 3주차 WIL 3주차 WIL (2024년 4월 29일 ~ 5월 03일)주제: 엑셀을 이용한 데이터 분석과 캐글목표:데이터 분석을 위한 엑셀 활용데이터 분석 경진대회 서비스 캐글 활용정규표현식 기초 학습엑셀을 이용한 캐글 데이터 분석주요 내용:엑셀 기초 함수합계 : =SUM(Range)개수 : =COUNTA(Range)평균 : =AVERAGE(Range)최소, 최대값 : MIN, MAX엑셀 피벗테이블대용량의 데이터를 요약하여 간단하고 이해하기 쉬운 형태로 표시단축키Alt - N - V - T캐글이란?캐글은 데이터 과학 및 기계 학습 경진대회 플랫폼으로, 데이터 분석가와 기계 학습 엔지니어가 실제 데이터를 사용하여 문제를 해결하고 경쟁할 수 있는 공간을 제공, 캐글을 통해 다양한 데이터셋과 문제에 도전하며 실력을 향상시킬..
썸네일 프로그래머스 데이터 분석 데브코스 2주차 WIL 2주차 WIL (2024년 4월 22일 ~ 26일)주제: 데이터 활용 능력 향상목표:데이터 기반 의사 결정 능력 향상데이터 기반 제품 개선 능력 향상Gen AI를 활용한 생산성 증대데이터 활용 과정에서 발생하는 윤리적 문제 이해주요 내용:데이터 기초데이터 문해력의 중요성데이터 수집 및 정제 방법데이터 분석 및 시각화 도구데이터 기반 의사 결정데이터 기반 의사 결정 프로세스데이터 분석 결과 해석 및 활용의사 결정 과정에서 발생하는 오류 및 편향 방지데이터 기반 제품 개선데이터 기반 A/B 테스트사용자 데이터 분석을 통한 제품 개선데이터 기반 마케팅 및 고객 관리Gen AIGen AI의 개념 및 작동 방식ChatGPT와 같은 Gen AI 모델 활용 사례Gen AI 활용 시 주의점데이터 윤리개인정보 보호알고리..
백준 28278번 스택 2 - Python 문제 https://www.acmicpc.net/problem/28278 문제 해석 입력 첫번째 줄에 명령의 개수가 입력되고 그 뒤로 명령이 입력된다. 이때 입력은 다음을 의미한다. '1 X' : 스택에 'X' Push '2' : 스택이 비었다면 -1을, 아니라면 스택을 Pop하고 삭제한 값을 출력 '3' : 스택의 길이를 출력 '4' : 스택이 비었다면 1을, 아니라면 0을 출력 '5' : 스택의 Top을 출력, 스택이 비었다면 -1을 출력 출력 입력 설명 참조. 풀이 1번 풀이 로직은 어렵지 않으나, 파이썬으로 풀어서 그런지 시간이 꽤 벅찼음. 스택 하나 만들어서 명령 따르면 되는거고, 핵심은 삼항연산자(크게 의미가..
썸네일 (자료구조) 스택, 큐 - 파이썬 스택 '스택'이란? 후입선출 (LIFO" Last In First Out)의 자료구조. 가장 늦게 들어온 값이 가장 늦게 나가는데, 이는 줄서기와 반대되는 개념이다. 리스트와는 다르게 읽기, 삽입, 삭제가 모든 인덱스에서 실행되지 못하고 한쪽 끝에서만 행할 수 있다. 그 한쪽 끝을 스택에서는 top이라고 한다. 쓰는 방법 파이썬에서는 스택을 따로 명시할 수 없다. 대신 리스트를 스택처럼 활용할 수 있는 내장함수가 있다. 선언 Stack = [1, 2, 3] print(Stack) # [1, 2, 3] 리스트를 선언하고 마음속으로 '이건 스택이다!' 라고 굳게 다짐하면 스택이 선언된다. 원소 삽입 Stack = [1, 2, 3] Stack.append(4) print(Stack..
썸네일 C언어 기초 문법 총정리 🦖 30분만에 나 C언어 할 줄 알아! 할 수 있는 기초 문법 총정리! 짧게 정리해서 설명 부족할 수 있음! 그럴 땐 우리의 친구 챗 지피티와 함께하기. 기초 출력 Hello, World !!! #include int main () { printf("Hello, World !!!"); return 0; } #include => 표준 입출력 라이브러리, 'stdio.h'를 포함한다. int main() {} => 반환값이 없는 main 함수를 선언한다. printf("Hello, World !!!"); => 'Hello, World'를 콘솔에 출력한다. return 0; => main함수를 마친다. 변수 선언, 입출력 #include int main () { int Value_1 ..
썸네일 변수명을 한글로 하면 안될까? 어느날.. 문득 이런 생각이 들었다. 왜 항상 변수 이름이나 함수 이름을 꼭 영어로 쓸까.. 나는 초등학교 영어시간에 지우개 가루나 뭉치고 놀았던 갓 17살 나부랭이다. 때문에 영어로 변수 이름을 작성할 때마다 고역이다. 그래서 가독성도 좋아지고, 코드 짜는 시간도 줄고, 변수의 의도도 한 번에 알 수 있는 한글 변수를 써야할지 쓰지 말아야 할지 알아보겠다. 작동은 하는가. 놀랍도록 멀쩡히 작동한다. ide가 좋아하는가. 자동완성도 아주 잘 된다. 그럼 왜 쓰지 말아야 하는가. 내가 처음 c언어를 배울 때, 나의 스승님이 이런 말을 한 적이 있다. *"한글로 변수 이름을 짓는다면 밥을 혼자 먹어야 한다."* 그때는 별 생각 없이 그렇구낭~ 하고 넘어갔는데 처음에 말했듯이 나는 한글로 쓰고싶다. 그리고 쓰..
백준 1874번 스택 수열 # 문제 https://www.acmicpc.net/problem/1874 *** # 문제 해석 ## 입력 첫번째 줄에 두번째 줄부터 들어올 배열의 크기 N이 주어지고, 다음 줄부터 N개의 정수가 입력된다. ## 출력 1부터 N까지의 수를 이용해 push 와 pop 연산을 하는데, pop 할 때 삭제되는 수를 배열로 만들었을 때, 입력된 배열과 같아지도록 만들기 위해 해야하는 연산의 순서를 출력한다. 이때, push는 +로, pop은 -로 출력한다. 만약 입력된 배열과 같이 만들 수 없다면, NO를 출력한다. 예를 들어, [1, 3, 2]가 배열로 입력되었다면, push 연산을 할 때, 1부터 N까지 들어가기 때문에 push연산으로 [1] pop연산으로 [] push 연산으로 [2] push 연산으로 [..
썸네일 귀엽게 생긴 GO랭을 써보자 왜 GO인가? 나 석준쓰 17살인디 프로그래밍 처음 배울때 C언어로 배웠다. 거의 뭐 인생의 1/3을 프로그래밍 한 장인이라고 볼 수 있겠다. 아무튼, 뭘 하고는 싶고 할 줄 아는 건 없으니 아는 C언어로 알고리즘 문제만 풀었다. 그러다가... 쓰잘때기없이 길고 복잡하고 간지나기는 한 C언어 문법에 회의감이 느껴졌다. 그래서 파이썬을 시작했다. 그래서 지금까지 잘 쓰고 있었는데. . . . 너무 느리다. 그래서 뭘 하기만 하면 시간초과가 나온다. 물론 효율적으로만 작성하면 그런 일은 없지만, 평소에도 파이썬 문법이 좀 이상하다고는 생각하고 있었다. 예를들어 변수 선언과 값 할당이 같은 코드로 되어서 애매하다거나, 함수를 작성할 때 리턴값을 정확히 선언하지 않아 실수한다거나, 정수형 변수에 문자를 할당해도..
썸네일 백준 9506번 약수들의 합 문제 https://www.acmicpc.net/problem/9506 문제 해석 입력 한 줄에 하나씩 정수가 입력되고 -1이 입력되면 프로그램을 종료한다. 출력 입력받은 수가 '완전수'라면 "{n} = {n의 약수} + {n의 약수} ... {n의 약수}"를 출력한다. '완전수'가 아니라면 "{n} is NOT perfect." 를 출력한다. 완전수란 자기 자신을 제외한 모든 약수의 합과 자기 자신이 같은 수를 말한다. 풀이 1번 풀이 n이 i로 나누어 떨어지는지 확인하고 나누어 떨어진다면 약수 배열에 추가한다. 1부터 n-1 까지 반복한다. 약수 배열의 합과 n이 같다면 완전수로 출력한다. 아니라면 완전수가 아님을 출력한다. -1이 입력될 때까지 반복한다. while Tr..
썸네일 백준 27433번 팩토리얼 2 - Python 문제 https://www.acmicpc.net/problem/27433 문제 해석 입력 정수 N이 출력된다. 출력 N!을 출력한다. 풀이 1번 풀이 재귀함수로 풀어보겠다. 함수 &#39;Factorial&#39; 는 인수로 정수 하나를 받고, 그 정수의 팩토리얼을 반환한다. &#39;Factorial&#39;은 전달된 정수가 2보다 작으면 1을 리턴하고 아님 정수 * Factorial(정수 - 1)을 반환한다. def Factorial(Num): if Num < 2: return 1 else: return Num * Factorial(Num-1) print(Factorial(int(input())))
썸네일 백준 28215번 대피소 - Python 문제 https://www.acmicpc.net/problem/28215 문제 해석 입력 첫 번째 줄에 집의 수 N, 대피소의 수 K가 입력된다. 그 뒤 집들의 좌표가 N줄에 걸쳐 입력된다. 출력 입력 받은 집의 좌표 중에서 K개의 대피소를 선정한다. 선정할 수 있는 모든 경우의 수 중에서 대피소에서 집 까지의 거리 중 가장 긴 값이 가장 작을 때의 최장거리를 출력한다. 여기서 대피소 까지의 거리란 (대피소의 X좌표) - (집의 X좌표) 의 절대값과 (대피소의 Y좌표) - (집의 Y좌표) 의 절대값을 합한 값을 의미한다. 풀이 1번 풀이 브루트포스 알고리즘을 이용한다. 집들 중에서 대피소를 선정하는 과정은 &#39;조합&#39;을 활용한다. but. 대피소의 수가 정해져있지 않으므로 직접 구현하기보다는 ..
썸네일 백준 28214번 크림빵 - Python 문제 https://www.acmicpc.net/problem/28214 문제 해석 입력 정수 N, K, P와 빵의 정보가 입력된다. N은 빵 묶음의 수, K는 빵 한 묶음 당 빵의 개수, P는 크림이 없는 빵의 최대치이다. 빵의 정보는 이진수 배열로 입력되며 1은 크림이 있는 빵, 0은 크림이 없는 빵을 나타낸다. 출력 크림이 없는 빵인 P개 미만인 묶음의 수를 출력한다. 풀이 1번 풀이 첫 번째 반복문에는 빵 묶음의 개수, 두 번째 반복문에서는 한 묶음 당 빵의 개수 동안 2중 반복문을 돈다. 안쪽 반복문을 도는 동안 0의 개수를 카운트하고, 저장한 뒤, 카운트 한 변수를 초기화 한다. 바깥쪽 반복문이 끝난 뒤, 판매 가능한 빵의 개수를 출력한다. N, K, P = map(int, input().sp..