https://programmers.co.kr/learn/courses/30/lessons/12969 코딩테스트 연습 - 직사각형 별찍기 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 n과 m은 각각 1000 이하인 자연수 programmers.co.kr 해설이 필요없을정도로 쉽다. 내 풀이 a, b = map(int, input().strip().split(' ')) for i in range(b): for j in range(a): print("*", end = "") print("") 근데 다른사람 풀이를 보면 내풀이가 무식해보인다.. 다른사람 풀이 a, b = map(int, ..
https://programmers.co.kr/learn/courses/30/lessons/12922 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 programmers.co.kr 길이가 1 일때,와 홀수일때 '수'만 잘 추가해주면 쉽게 풀수있다. 내 풀이 def solution(n): answer = '수박' if n == 1: return '수'; if n%2 == 0: return answer * (n//2) else: answer *= n//2 answer += '수' return answer ..
https://www.boostcourse.org/cs126/lecture/141729/?isDesc=false 쉽게 배우는 자바1 부스트코스 무료 강의 www.boostcourse.org https://www.boostcourse.org/cs126/lecture/141730/?isDesc=false 쉽게 배우는 자바1 부스트코스 무료 강의 www.boostcourse.org
꼭 알아둬야 할 자료 구조: 배열 (Array) 데이터를 나열하고, 각 데이터를 인덱스에 대응하도록 구성한 데이터 구조 파이썬에서는 리스트 타입이 배열 기능을 제공함 1. 배열이 필요한 이유 같은 종류의 데이터를 효율적으로 관리하기 위해 사용 같은 종류의 데이터를 순차적으로 저장 장점: 빠른 접근 가능 첫 데이터의 위치에서 상대적인 위치로 데이터 접근(인덱스 번호로 접근) 단점: 데이터 추가/삭제의 어려움 미리 최대 길이를 지정해야 함 그래서 최대 길이 이상의 데이터를 추가하기 어렵다 또 배열의 중간 원소를 삭제하면 그 뒤 원소를 앞으로 밀어줘야 하는 불편함이 발생한다 C 언어 예: 영어 단어 저장 #include int main(int argc, char * argv[]) { char country[3..
크롤링을 하기위한 기본적인 코드의 패턴을 알아보자. # 1. 라이브러리 임포트 import request from bs4 import BeautifulSoup # 2. 웹페이지 가져오기 res = requests.get('http://v.media.daum.net/v/20170615203441266') # 웹페이지 정보가 res 변수로 들어감 # 3. 웹페이지 파싱하기 soup = BeautifulSoup(res.content, 'html.parser') # 4. 필요한 데이터 추출하기 mydata = soup.find('title') # 5. 추출한 데이터 활용하기 print(mydata.get_text()) 크롤링을 하기위해 필요한 2가지 라이브러리 requests 웹페이지 가져오기 라이브러리 bs4..
크롤링하기 전 필요한 라이브러리 및 테스트 pip install --upgrade 라이브러리명 라이브러리가 이미 설치되어 있으면, 최신버전으로 업데이트. ex) pip install --upgrade google-api-python-client 크롤링을 위해 다음과 같은 라이브러리를 다운받아보자 pip3 install --upgrade google-api-python-client !pip3 install google_trans_new pip3 install bs4 예제 코드 실행 from google_trans_new import google_translator translator = google_translator() translate_text = translator.translate('안녕하세요',l..
문제 출처 https://programmers.co.kr/learn/courses/30/lessons/17682?language=python3 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 이 문제는 문자열 처리를 통해 합을 구해야한다. 이때 스타상(*) 조건에 의해 이전값을 기억해야 하므로 합을 저장하는 변수를 배열로 잡는다. 주어진 문자열에서 다트 점수가 10일 경우 문자가 '1'과 '0'으로 나눠져서 받아지기 때문에 그부분에 대한 처리를 처음에 해주었다. 이때 cur을 초기화 하지않으면 런타임 에러가 발생한다. 예를 들어 점수가 0S로 들어오게 된다면 if문에서 cur 값에 값이 할당되지 않기 때문에 런타임에러가 발생한다. 이부분만 조심하면 쉽게 풀 수 있었다. 내 코드 d..
쉽게 배우는 자바 1 1. 수업 소개 https://ko.wikipedia.org/wiki/%EC%9E%90%EB%B0%94_(%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D_%EC%96%B8%EC%96%B4) 자바 (프로그래밍 언어) - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 자바Java패러다임프로그래밍 패러다임: 객체 지향 프로그래밍 (클래스 기반 프로그래밍), 구조적 프로그래밍, 명령형 프로그래밍, 제네릭 프로그래밍, 반영, 병 ko.wikipedia.org 4-3. 실행_Java의 동작원리 https://asfirstalways.tistory.com/158 #자바가상머신, JVM(Java Virtual Machine)이란 무엇인가? #J..
문제 출처 https://programmers.co.kr/learn/courses/30/lessons/42889 코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr 해당 스테이지에 사람이 없을때 예외처리를 안해주면 런타임 에러가 발생한다. 왜냐면 예를들어 10개의 스테이지가 있을때 모든 사람이 최대 5번 스테이지밖에 못갔다면 6~10 스테이지는 도전한 사람수가 0이기 때문이다. 또 주의 할 점은 이미 fail_rate에 스테이지 순으로 오름차순 정렬되도록 값을 넣었으므로 따로 정렬조건을 추가해 줄 필요 없다. 이..
다운로드 : https://www.h2database.com h2.bat 경로 : C:\Program Files (x86)\H2\bin 설치후 h2.bat 실행 (윈도우 기준) h2.bat 켜놓고 끄면 db가 죽어버리기 때문에 항상 켜둬야 함. 최초에는 데이터베이스 파일을 만들어야 해서 ~/test, 즉 내 home에 이쓴 test파일을 말한다. home 경로 : C:\Users\wu2ee 연결을 누르면 빨간 네모로 표시된 부분을 클릭하면 다시 나가진다. 이 페이지가 뜨면서 home에 test.mv.db가 만들어진다. 이후에 연결을 할때, JDBC URL에 ~/test 이렇게 파일로 접근하게 되면 어플리케이션이랑 웹콘솔이 동시에 접근이 안되고 파일이 충돌나면서 오류가날 수 있기 때문에 위 그림과 같이 접..
이번엔 회원 등록을 만들자. 우선 멤버 컨트롤러에 createForm 메서드를 만든다. 그리고 templates안에 members라는 폴더를 만들고 createMemberForm.html을 만든다. 잘 나온다. 페이지 소스 보기를 하면 우리가 작성한 html 소스코드가 렌더링 된다. html에 form으로 묶여있는데, 웹에서 spring이라고 친다면 post로 {name : spring} 으로 날아가게 된다. MemberForm 클래스를 만들고 private String name; 을 선언하면 name 에 아까 등록한 이름인 'spring'이 들어가게 된다. 이렇게 까지 하고 돌리면 회원 가입까지는 된다. 이제 회원이 가입 됬는지 목록을 만들면 'spring'이 잘 등록 됬는지 확인할 수 있다. 동작 방..
이제 멤버컨트롤러를 통해 회원을 등록하고 조회하는 걸 만들어보자. HomeController를 생성한다. home.html을 생성한다. 실행해보면 우리가 만든 home.html이 뜬다. 회원 가입을 누르면 아직 페이지를 만들지 않아서 에러뜸. 근데 우리가 예전에 Welcome Page로 localhost 8080에 접근시 index.html을 반환했는데 어떻게 저게뜨는걸까? 우선순위가 존재함. 정적 컨텐츠반환시 스프링 컨테이너에 관련 컨트롤러가 있는지 찾고 없을때 정적 컨텐츠를 반환한다. Welcome page도 마찬가지다. 지금의 경우 localhost:8080 요청이 들어왔는데 이렇게 맵핑된게 있기 때문에 바로 이 컨트롤러가 호출되고 끝나는거다. 그래서 기존의 index.html은 무시된다. 출처 :..
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.