본문 바로가기

전체 글

(204)
팀 프로젝트 - 가위바위보게임 지난주에 개인과제로 진행했었던 가위바위보게임을 웹으로 구현하는 것이 이번 과제이다. 내가 주로 맡은 부분은 데이터베이스를 만들고 웹에서 실행한 가위바위보의 전적을 데이터베이스에 입력하는 것이다. 강의의 내용을 최대한 떠올려보면서 진행을 했다. # 데이터베이스 생성코드입니다.basedir = os.path.abspath(os.path.dirname(__file__))app = Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI'] =\ 'sqlite:///' + os.path.join(basedir, 'database.db')db = SQLAlchemy(app)stats = {'win':0, 'lose':0, 'draw':0} # 통계 저장용 딕셔너리# ..
알고리즘 코트카타 - 26 ~ 30 (자바스크립트) https://school.programmers.co.kr/learn/courses/30/lessons/76501?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1.문제 설명 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 제한사항 absolutes의 길이는 1 이상 1,000 이하입니다. absolutes의 모든 수는..
SQL 코드카타 109 - Consecutive Numbers https://leetcode.com/problems/consecutive-numbers/ Column NameTypeidintnumvarchar Logs 테이블: id: 테이블의 기본키num: 숫자적어도 세 번 연속으로 나타나는 모든 숫자를 찾으세요. 쿼리를 자체결합해서 풀어낼 수 있었다.SELECT distinct l1.num ConsecutiveNumsFROM Logs l1JOIN Logs l2 ON l1.id = l2.id - 1JOIN Logs l3 ON l1.id = l3.id - 2where l1.num = l2.num and l1.num = l3.num 인터넷검색을 하면서 발견한 방법인데 결합하려는 열에 연산을 적용해서 원하는 만큼 당겨서 join을 할 수 있었다. 위의 방법을 통해서 간단..
알고리즘 코드카타 109 - 연속된 부분 수열의 합 https://school.programmers.co.kr/learn/courses/30/lessons/178870?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명 비내림차순으로 정렬된 수열이 주어질 때, 다음 조건을 만족하는 부분 수열을 찾으려고 합니다. 기존 수열에서 임의의 두 인덱스의 원소와 그 사이의 원소를 모두 포함하는 부분 수열이어야 합니다. 부분 수열의 합은 k입니다. 합이 k인 부분 수열이 여러 개인 경우 길이가 짧은 수열을 찾습니다. 길이가 짧은 수열이 여러 개인 경우 앞쪽(시작 인덱스가 작은)에 나오는..
알고리즘 코트카타 - 21 ~ 25 (자바스크립트) https://school.programmers.co.kr/learn/courses/30/lessons/12947?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr1. 문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.function solution(x) { let answer = true..
SQL 코드카타 108 - Triangle Judgement https://leetcode.com/problems/triangle-judgement/description/ Column NameTypexintyintzint Triangle 테이블: 각 행은 세 선분의 길이입니다.세 선분이 삼각형을 이룰 수 있다면 Yes, 아니라면 No를 반환하세요. 세 선분이 삼각형을 이루기 위해서는 가장 큰 선분의 길이가 나머지 두 선분의 길이보다 작아야한다. 따라서 x, y, z중 가장 긴 열의 길이가 나머지 두 열의 합보다 작아야한다. 열 간의 숫자 비교는 max()를 사용할 수 없었기 때문에 검색을 통해서 Greatest()를 찾아서 사용했다. 그리고 가장 큰 숫자를 찾는 것은 쉬워도 나머지 두 숫자를 걸러내는 것은 또 다른 문제였기 때문에 x, y, z를 전부 더하고 가장..
알고리즘 코드카타 108 - 삼각 달팽이 https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명 정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요.제한사항 n은 1 이상 1,000 이하입니다. 삼각형모양으로 수를 배치한 후 만들어진 모양을 리스트로 반환하는 알고리즘, 다행..
웹개발 4주차 과제 - 멜론 차트 스크래핑하기 그동안 웹개발 강의의 복습을 잘 해왔는지 확인할 수 있는 순간이 왔다. 지난번에 제대로 구현하지 못했던 flask를 이번에는 제대로 활용할 수 있는지 확인해보자! 이 메인페이지에 멜론차트에서 스크래핑 해온 음악들을 넣어주면 된다.from flask import Flask, render_templatefrom bs4 import BeautifulSoupimport requestsapp = Flask(__name__)@app.route('/')def index(): return render_template('index.html', data = melon_data)if __name__ == '__main__': app.run() app.py가 이미 index.html과 연결되어 있는 상태이다..