파이썬(27)
-
[Baekjoon] - 나머지 3052번
문제를 보니 42로 값을 나눴을때 서로 다른 나머지가 몇개 있는지 출력하는 문제다 중복 된 값을 저장할 때 카운트 안되게 하기위해 set 집합을 사용 입력값 10개를 입력받고 입력받은 값을 a로 초기화 a%42로 나머지를 set1 집합에 넣는다 그리고 저장된 set1의 길이를 출력! 아래와 같은 소스코드를 짤 수 있다 set1 = set() for i in range(10): a = int(input()) set1.add(a%42) print(len(set1))
2024.03.05 -
[Baekjoon] - BOJ Bundle in Math. Vol 1_H번 - A+B - 10 (제1편)
BOJ Bundle in Math. Vol 1 대회 문제의 H번을 풀어보았다 A와 B의 값이 바로 주어지지 않고, 채점기와의 상호작용을 통해(?) 그 값을 알아내라고 한다 문제 설명은 복잡해 보이지만 간단하게 예제입력과 출력을 설명하면 A값과 B값을 채점기에 0과 1로 입력하여 ? A 1을 출력하면 0과 1로 입력할 수 있는데 0을 입력하여 ? A 2 출력 또 0을 입력하여 ? A 3 출력 1을 입력하여 A값이 3 ? B 1 출력된다 0을 입력하여 ? B 2 출력 1입력 B값은 2 3+5인 !5 출력 출력 기준을보니 질문을 출력한 뒤 실제로 질문을 채점기에게 보내려면 표준 출력 flush해야한다고 한다 여기서 flush는 버퍼에 저장된 내용을 바로 출력 유무를 결정한다 노트란을 참고해서 빈칸만 채우면 되..
2023.12.08 -
[Flask] 3-14 검색
문답변에 대한 데이터가 계속 쌓여가는 게시판이므로 검색기능은 필수라고 할 수 있다 검색의 대상은 제목, 질문의 내용, 질문 작성자, 답변의 내용, 답변 작성자 정도로 하면 적당할 것이다 "파이썬"이라고 검색을 하면 "파이썬" 이라는 문자열이 제목, 내용, 질문 작성자, 답변, 답변 작성자에 존재하는지 찾아보고 그 결과를 화면에 보여주어야 한다 검색 기능을 위해 잠시 데이터베이스 지식을 공부할 필요가 있다 조인, 아우터조인, 서브쿼리에 대해서 알아볼 것이다 조인 조인은 동일한 데이터로 연결된 두 모델을 함께 조회할 때 사용한다 예를들어 작성자 이름이 "홍길동"인 질문을 검색할 수 있는 방법에 대해서 생각해 보면 절차 1. User 모델에서 username이 '홍길동'인 데이터의 id 조사하기 절차 2. 절..
2023.12.03 -
[Flask] 3-13 마크다운 기능 적용하기
질문이나 답변을 작성할 때 일반적인 텍스트 외에 글자를 진하게 표시하거나 링크를 추가하고 싶을 수도 있다 '마크다운'이라는 글쓰기 도구를 이용하면 이런 것들을 쉽고 간단하게 표현할 수 있다 마크다운을 적용해 보자 리스트 목록을 표시하기 위해 다음처럼 작성한다 위 문자열을 마크다운 해석기가 HTML로 변환하면 실제 화면에서는 아래와 같이 보인다 순서가 있는 목록을 표시하려면 아래처 작성한다 결과는 아래와 같다 강조 작성한 글자를 강조 표시하려면 강조할 텍스트 양쪽에 **를 넣어 감싼다 결과는 아래와 같다 링크 HTML 링크는 다음처럼 [링크명](링크주소) 규칙을 적용하여 생성한다 결과는 아래 같다 소스코드 소스코드는 백쿼트 ` 3개를 연이어 붙여 위아래로 감싸면 생성할 수 있다 결과는 아래 같다 인용 인용..
2023.12.03 -
[Flask] 3-12 앵커
몇가지 문제점을 해결해 보려고한다 발견된 문제점은 답글을 작성하거나 수정한 후에 항상 페이지 상단으로 스크롤이 이동되기 때문에 본인이 작성한 답변을 확인하려면 다시 스크롤을 내려서 확인해야 한다는 점이다 HTML에는 URL 호출시 원하는 위치로 이동시켜 주는 앵커(anchor) 태그가 있다 HTML 중간에 라는 앵커 태그가 있다면 이 HTML을 호출하는 URL 뒤에 #flask 라고 붙여주면 해당 페이지가 호출되면서 해당 앵커로 스크롤이 이동된다 답변등록, 답변수정, 답변추천시 앵커 태그를 이용하여 원하는 위치로 이동할 수 있도록 수정해 보자 앵커 엘리먼드 먼저 답변 작성, 수정, 추천시에 이동해야할 앵커 엘리먼트를 질문 상세 템플릿에 추가하자 답변이 반복되어 표시되는 for 문 바로 다음에 와 같이 앵..
2023.12.03 -
[Flask] 3-11 추천 기능 추가하기
이번에는 질문과 답변에 "추천(좋아요)" 기능을 추가해 보자 모델 변경 질문이나 답변에 "추천"을 적용하려면 질문 모델과 답변 모델에 "추천인" 이라는 속성을 추가해야 한다 하나의 질문에 여러명이 추천할 수 있고 한 명이 여러개의 질문에 추천할 수 있으므로 이런 경우에는 "다대다(N:N)" 관계를 의미하는 ManyToMany 관계를 사용해야 한다 question_voter SQLAlchemy에서 ManyToMany 관계를 적용하는 방법에 대해서 알아보자 먼저 다음과 같은 question_voter 테이블 객체를 작성해보 ManyToMany 관계를 적용하기 위해서는 db.Table을 통해 N:N 관계를 의미하는 테이블을 먼저 생성해야 한다 question_voter는 사용자 id와 질문 id를 쌍으로 갖는..
2023.12.03