Computer Science 387

W3Schools 자바 | #0 자바 튜토리얼 (입출력, 주석, 변수, 타입, 연산자 등)

Java Tutorial (w3schools.com) Java Tutorial W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more. www.w3schools.com 왜 자바인가? 자바는 모바일 앱, 데스트탑 프로그램, 웹 애플리케이션, 웹 서버, 게임, 데이터베이스 등등에 사용된다. 자바는 서로 다른 OS에서 자유롭게 사용할 수 있다. 자바 설치 환경 : Window10 wsl $ sudo apt instal..

백준 C++ | #25 BOJ2257 화학식량 C++ 문제 풀이

2257번: 화학식량 (acmicpc.net) 2257번: 화학식량 첫째 줄에 화학식이 주어진다. 화학식은 H, C, O, (, ), 2, 3, 4, 5, 6, 7, 8, 9만으로 이루어진 문자열이며, 그 길이는 100을 넘지 않는다. www.acmicpc.net 골드까지 화이팅! #define _CRT_SECURE_NO_WARNINGS #include #include #include #include int main() { char* str = new char[100]; scanf("%s", str); int size = strlen(str); std::stack stk; int i = 0; while (i < size) { if (str[i] == '(') { stk.push(-1); } else if..

백준 C++ | #24 BOJ1823 수확 C++ 문제 풀이

1823번: 수확 (acmicpc.net) 1823번: 수확 첫째 줄에 벼의 개수 N(1 ≤ N ≤ 2,000)이 주어지고 두 번째 줄부터 N+1번쨰 줄까지 벼의 가치 v(i) (1 ≤ v(i) ≤ 1,000) 가 주어진다. www.acmicpc.net 다이나믹 프로그래밍.. 너무 어렵당 그래도 왜 전역변수로 DP용 배열을 만드는지 알게 되었다. DP용 배열이 전역변수로 있으면, 재귀함수로 구현했다고 하더라도, 같은 값을 여러 번 구하지 않아도 된다. #include using namespace std; int n, a[2001], d[2001][2001]; int dp(int l, int r, int k) { if (l > r) { return 0; } int& ret = d[l][r]; if (ret..

[에러] ERROR 2002 (HY000): Can't connect to local MySQL server through socket ''/var/run/mysqld/mysqld.sock' (2) 에러 해결

에러 내용 $ mysql start ERROR 2002 (HY000): Can't connect to local MySQL server through socket ' '/var/run/mysqld/mysqld.sock' (2) 해결 방법 $ sudo apt install mysql-server $ sudo mysql 참고로 $ service mysql Usage: /etc/init.d/mysql start|stop|restart|reload|force-reload|status 여기서 시키는 대로 /etc/ 어쩌구로 실행했더니 authentication 문제가 발생해서 그냥 sudo mysql로 실행하는 게 편한 것 같다. $ sudo mysql Welcome to the MySQL monitor. Com..

[에러] OSError: mysql_config not found 에러 해결 방법

에러 출력 내용 error: subprocess-exited-with-error × python setup.py egg_info did not run successfully. │ exit code: 1 ╰─> [13 lines of output] /bin/sh: 1: mysql_config: not found /bin/sh: 1: mariadb_config: not found /bin/sh: 1: mysql_config: not found Traceback (most recent call last): File "", line 2, in File "", line 34, in File "/tmp/pip-install-w06o8t8k/mysqlclient_e734938cf6d148aeab1e70c686ed01..

점프 투 장고 #3-3 | 파이보 서비스 개발하기(views.py 분리, 추천, 앵커, 마크다운, 검색, 파이보 추가 기능)

views.py 파일 분리하기 지금까지는 장고에 페이지가 추가될 때마다 이에 맞는 view 함수를 views.py에 추가해주었다. views.py에 너무 함수가 많아지면 관리가 어렵기 때문에 views.py 파일을 분리해보자. views 폴더를 만들어, base_views.py, question_views.py, answer_views.py로 나누어 담는 방식 from webbrowser import get from django.http import HttpResponseNotAllowed from django.shortcuts import render, get_object_or_404, redirect from ..models import Question, Answer from django.utils ..

백준 C++ | #23 BOJ11053 계단 오르기 C++ 문제 풀이

11053번: 가장 긴 증가하는 부분 수열 (acmicpc.net) 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 다이나믹 프로그래밍 문제였다. 다이나믹 프로그래밍을 푼 두번째 문제였는데, 다이나믹 프로그래밍은 배열을 하나 더 만들어서 재귀 대신 쓰는 방식인 것 같다. 이 문제에서도 복잡하게 생각할 것 없이 수열 사이즈에 맞는 배열을 하나 더 만들고, 배열마다 그 사이즈를 다른 배열을 이용해 저장해주었다. 몇 번 틀렸는데, 그건 배..

점프 투 장고 #3-2 | 파이보 서비스 개발하기(회원가입, 모델 변경, 글쓴이 표시, 수정과 삭제)

[참고] 3-06 회원가입 - 점프 투 장고 (wikidocs.net) 3-06 회원가입 `[완성 소스]` : [github.com/pahkey/jump2django/tree/3-06](https://github.com/pahkey/jump2django/tree ... wikidocs.net 회원가입 - 회원가입 링크 - urls.py - forms.py - views.py - signup.html - 회원가입 파이보 사용자를 추가하는 회원가입 기능. 장고 django.contrib.auth 앱을 이용해서 구현할 수 있다. - 회원가입 링크 {%if not user.is_authenticated%} 회원가입 {%endif%} navbar.html에 회원가입 링크를 삽입해준다. 회원가입 링크를 누르면, c..

백준 C++ | #22 BOJ2579 계단 오르기 C++ 문제 풀이

2579번: 계단 오르기 (acmicpc.net) 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net DP에서는 재귀 대신 배열이나 벡터를 이용해서 값을 저장한다. #include #include #include int main() { int n; std::cin >> n; std::vector v; std::vector dp(301); for (int i = 0; i > tmp; v.push_back(tmp); } dp[0] = v[0]; dp[1] = v[0] + v..

점프 투 장고 #3-1 | 파이보 서비스 개발 - 내비게이션 바, 페이징, 템플릿 필터, 답변 개수 표시, 로그인과 로그아웃

[참고] 3장 파이보 서비스 개발! - 점프 투 장고 (wikidocs.net) 3장 파이보 서비스 개발! 파이보의 기초 공사가 마무리되었으니 이제 본격적으로 파이보를 만들 차례이다. 이 장을 마치면 파이보는 꽤 괜찮은 모습으로 거듭날 것이다. 파이보를 조금씩 발전시켜 나가는 즐 ... wikidocs.net 점프 투 장고 3장에서는 파이보 서비스를 본격적으로 개발한다. 게시판 CRUD 기능, 로그인/로그아웃, 게시판 페이징, 회원가입, 검색 기능을 추가한다. 그리고 부트스트랩을 적용하여 웹 페이지의 심미성을 높인다. 일단 이 글에서는 네비게이션 바, 페이징, 템플릿 필터, 답변 개수 표시, 로그인/로그아웃을 먼저 살펴보자. 기능을 추가하고 화면을 바꾸는 걸 반복하면서 위 사진에서 보이는 장고 아키텍쳐에..