전체 글 (168) 썸네일형 리스트형 char 형 -> int 형 변환 ord('a')를 하면 해당 아스키코드 값으로 변경이 된다. 이후 목적에 맞게 사용하면 된다. Form 태그 안에 Button을 넣을 경우 button을 넣고 제이쿼리 클릭 이벤트 혹은 ajax를 실행했을때 submit이 실행되는 경우가 있다. 이런 실행을 막고자 할 때는 클릭 이벤트 혹은 ajax함수 안에 return false를 넣으면 된다. [SWEA 1798] 범준이의 제주도 여행계획 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV4x9oyaCR8DFAUx&categoryId=AV4x9oyaCR8DFAUx&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 이해하기 장소를 방문해서 만족도를 최대로 높이는 경우를 구하는 문제이다. 하루에 최대 9시간까지 사용할 수 있고 9시간 안에 호텔에 도착을 해야한다. 마지막 날이라면 9시간 내에 공항에 도착을 해야 한다. 그때의 최대 만족도와 경로를 구하는 문제이다. 모든 장소를 방문해 보는 완전탐색으로 푸는 문제이다. 2. 구.. 투 포인터 투 포인터 1차원 배열이 있고 두개의 포인터를 이용해 원하는 값을 찾아내는 알고리즘이다. 가장 대표적은 예로는 N개의 수에서 합 M의 개수를 찾는 문제이다. 포인터로 사용할 s,e와 합을 저장할 S가 있다고 한다면 이론적으론 다음과 같다. 1. S >= M 이면 S -= A[s++] 2. e == N 이면 break 3. S < M 이면 s += A[e++] 4. S == M 이면 ans++ 이 과정을 거쳐서 M의 개수를 찾는 방식이다. 그림과 같이 이해하면 다음과 같다. 처음은 다음과 같다. 초록색 화살표를 s, 파란색 화살표를 e라고 한다면 처음은 0에서부터 시작한다. 현재 S값이 M보다 작기 때문에 3번 과정이 수행된다. 지금 상태는 S == M인 상태이다. 그렇기 때문에 ans를 4번이 실행되고 .. [BOJ] 3653번 영화 수집 이해하기 영화를 한 편 보려면 해당 DVD의 위치를 찾아 뺀다. 그리고 다 본 후에는 맨 위로 가져다 놓는다. 영화 한 편을 볼 때마다 그 DVD의 위에 몇 개의 DVD가 있었는지를 구해야하는 문제이다. 구간 트리를 이용하여 문제를 풀 수 있다. 구간 트리를 만드는 아이디어는 DVD의 위치에 0 또는 1을 기록해 놓는 것이다. 이를 바탕으로 누적합을 구하는 구간 트리를 만들어서 현재 위치+1에서 맨 위까지 몇개의 책이 쌓여있는지를 구할 수 있도록 한다. 전체 코드 import java.util.Scanner; public class B3653영화수집 { static final int MAX = 200000; static int T,N,M; static int[] arr; static long[] tree.. [BOJ] 1280번 나무심기 이해하기 - 1번부터 N번까지 X의 위치에 나무를 심는다. 이때 나무를 심는 비용은 1-N-1까지의 거리의 차이의 합이다. - 이를 하나씩 써보면 다음과 같다. Ai = |Xi-Xi-1|+|Xi-Xi-2|+...+|Xi-X1| - 이는 두 가지 경우로 나눌 수 있다. - 첫번째는 현재 심으려는 위치보다 이전 경우에 심어져 있는 나무의 경우. - 두번째는 현재 심으려는 위치보다 이후 경우에 심어져 있는 나무의 경우. - 먼저 첫번째 경우는 현재 위치보다 이전 위치에 심어져 있는 나무의 수(pc) * 현재 심으려는 나무의 위치(x) - 이전 나무 위치들의 합(ps). 즉, pc*x-ps 로 나타낼 수 있다. - 두번째 경우는 이후 나무 위치들의 합(ns) - 이후 위치에 심어져 있는 나무의 수(nc) * 현.. JAVA EOF 판단 Scanner while(sc.hasNextInt()) { sc.nextInt(); } while(sc.hasNextLine()) { sc.nextLine(); } BufferedReader BufferedReader br = new BufferedReader(new InputStreamReader(System.in); String input = ""; while((input = br.readLine()) != null) { } 만약 입력의 끝이 주어지지 않고 계속 받는다는 문제가 나오면 이렇게 쓰면 된다. 문제 예시 http://boj.kr/3745 3745번: 오름세 문제 주식투자를 좋아하는 정인이는 주가의 오름세를 살펴보려고 한다. 정인이는 n일 동안 매일 주가를 적어놓았고, 여기서 오름세를 찾아보.. Git 특징 - 빠른 속도 - 단순한 구조 - 비선형적인 개발(동시 다발적인 병렬 개발과 공유) - 대규모 프로젝트에 유용 - 완벽한 분산구조 데이터를 변경사항으로 기록하지 않고 스냅샷으로 기록한다. 로컬 저장소 1. 작업 디렉토리 - pc에서 현재 작업중에 있는 디렉토리이다. - git에서 관리는 하지만, 추적은 하지 않는다. 2. 스테이징 영역 - 작업한 내용이 올라가는 임시 저장 영역이다. - git에 의해 변경점 추적 및 관리되는 영역이다. - 커밋을 준비하는 영역이다. - git add를 하면 작업 디렉토리에서 스테이징 영역으로 이동한다. 3. 로컬 저장소 - 커밋들이 영구적으로 저장되는 영역이다. - 원격 저장소로부터 clone한 커밋들이 존재하는 영역이다. - git commit을 하면 스테이징 영.. 이전 1 2 3 4 5 6 ··· 21 다음