분류 전체보기 562

[SWEA] 1959. 두 개의 숫자열 in JAVA

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpoFaAS4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com A나 B를 자유롭게 움직여서 서로 마주보는 숫자들을 곱한 뒤 모두 더할때의 최댓값을 구하는 문제 A의 길이 = N B의 길이 = M M이 큰 경우, N이 큰 경우, N과 M이 같은 경우 총 3가지의 경우를 고려해줘야 한다. 1) M이 큰 경우 (NM) : A의 배열 길이 > B의 배열 길이 즉, B를 움직이면서 A의 배열 요소와 곱해준다. 1번과 반대로 진행하면 됌. 3) N == M인 경우 : f..

[Coding Test] 자바 문법, 속성 총 정리

목차 1. public static void main(String[] args){} 자동 생성 psvm + enter > 단축키 2. System.out.println() 자동 생성 sout + enter (+ 클래스 이름은 Main) 1. 입력 총 3가지의 방법이 있다. Scanner, BufferedReader, StringTokenizer 입력 처리 속도 : (빠름) BufferedReader > StringTokenizer > Scanner (느림) BufferedReader, StringTokenizer은 문자열로 활용하기 위해 사용한다. 주로 BufferedReader를 사용한다. (1) Scanner Scanner sc=new Scanner(S..

[Java] 자바 8버전, 이클립스 다운로드 하는 방법

1. 자바 8버전 다운로드 https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html Java SE 8 (8u202 and earlier) 버전을 다운로드 한다. 참고로 오라클에서 무료로 보안 업데이트를 지원하는 자바 개발 키트 중에서 마지막 버전이다. 오라클 로그인 창이 나오면 로그인을 진행한다. 설치경로는 기본으로 설정되어 있는 곳으로 JDK를 설치하면서 자동적으로 JRE의 설치 또한 진행된다. JRE란 Java Runtime Environment를 의미한다. (1) 환경 변수 고급 시스템 설정 > 고급탭으로 들어간다. 새로 만들기 버튼 클릭! JAVA_HOME 환경변수 추가 CLASSPATH 환경변수 추가 Path 편..

[Java] 조건문 , 반복문, 배열

목차 https://opentutorials.org/course/1223/5373 배열 - 생활코딩 배열 배열(Array)은 연관된 정보를 그룹핑 하는데 사용한다. 이해를 돕기 위해서 비유를 들어보겠다. (비유는 이해를 돕기 위한 것일 뿐이다. 비유가 오히려 이해에 방해될 수 있다. 비유가 도움되 opentutorials.org 조건문 ( if문, switch문 ) 자바의 정석 1권 136p~ if문이 주로 많이 사용된다. 하지만, switch문에 대해 오랜만에 학습하기 때문에 기억도 떠올릴 겸 학습 진행! switch (조건식) { case 값1: // 조건식의 결과 == 값1일 때 수행 case 값2: // 조건식의 결과 == 값2일 때 수행 .... default: // 조건식의 결과와 일치하는 c..

[Java] 문자열 생성시 String과 new String()의 차이

String a = "Hello"; # 문자열 리터럴 생성 방식 String b= new String("Hello"); # new 연산자를 이용한 생성 방식 두 방식 모두 문자열을 생성하는 방식이나 가장 큰 차이점은 메모리 영역 부분입니다. Java에서는 String을 저장하는 방식은 총 2가지 입니다. Headp에 저장하거나 혹은 별도의 string constant pool에 저장하거나! 1. 문자열 리터럴 생성 방식 큰따옴표로 둘러싼 문자의 연속체를 의미 : string constant pool이라는 영역에 존재합니다. 2. new 연산자를 이용한 생성 방식 : Heap 영역에 존재합니다. 참고로 new 연산자로 생성하는 방식은 잘 사용하지 않는다. 문자열 리터럴 방식으로 사용하면 재사용이 가능한데,..

[Java] 연산자 (+증감 연산자, 비교 연산자, 논리 연산자)

목차 https://opentutorials.org/course/1223/5331 연산자 - 생활코딩 연산자란 연산자(演펴다연 算계산산 子, operator)란 특정한 작업을 하기 위해서 사용하는 기호를 의미한다. 작업의 종류에 따라서 대입 연산자, 산술 연산자, 비교 연산자, 논리 연산자 등이 있다. opentutorials.org 참고 서적 : 자바의 정석 연산자란? : 연산을 수행하는 기호를 의미한다. 연산자 (operator) : 연산을 수행하는 기호 피연산자 (operand) : 연산자으치 작업 대상 (변수, 상수, 리터럴 수식) 연산자의 종류 종류 연산자 설명 산술 연산자 + - * / % > 사칙연산과 나머지 연산 비교 연산자 > =

[Java] 데이터 타입 (+double형, float형 ), 형변환

목차 https://opentutorials.org/course/1223/5375 데이터 타입 - 생활코딩 데이터 타입은 조금 어렵다. 후속 수업에서 필수적인 선행지식은 아니지만, 또 뒤에 배치하는 것도 애매하다. 이번 토픽의 학습이 어렵게 느껴지면 다음 토픽으로 넘어가고 나중에 다시 학습하 opentutorials.org 데이터 타입 컴퓨터에 저장되는 정보의 가장 작은 단위 = bit 데이터 타입 데이터 종류 데이터 크기 논리형 boolean 1 byte 문자형 char 2 byte 정수형 byte 1 byte short 2 byte int 4 byte long 8 byte 실수형 float 4 byte double 8 byte 논리형 : boolean형의 기본값은 false이다. 문자 : char 타..

[Java] 숫자와 문자, 문자열

참고 링크 https://opentutorials.org/course/1223/5261 숫자와 문자 - 생활코딩 프로그래밍 입문자에게 가장 익숙한 데이터 타입(data type)은 숫자와 문자일 것이다. 이번 시간에는 실제로 가장 많이 사용되는 데이터 형인 문자와 숫자를 프로그래밍에서는 어떻게 표현하고 연 opentutorials.org 이번 프로젝트를 수행하면서 자바에 대해 두루뭉실하게 알고 있던 부분을 집고 넘어가야겠다고 생각했다. 그래서 정리가 잘 되어 있는 생활코딩이라는 사이트를 주메인으로 잡고 추가적으로 학습해야 하는 내용은 따로 조사해서 첨부할 예정! 문자와 문자열 문자 -> 작은 따옴표 ( +큰 따옴표도 가능) 문자열 -> 큰 따옴표만 가능 문자열 안에 큰 따옴표 넣는 방법 \를 큰 따옴표 ..

[프로그래머스] 게임 맵 최단거리 in python

https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr 문제를 보며 요약한 내용=> 내 위치 : (1,1) 상대 위치 : (n,m) 검은색 = 막힌 길 (0) 흰색 = 갈 수 있는 길 (1) 맵 벗어난 길은 갈 수 없다. 상대 팀 진영으로 가는 가장 빠른 길 -> bfs? 도착못할수도 있다. -> visited[x][y]=-1이면 도착 못한 거! => -1 출력 ..

[프로그래머스] 이진 변환 반복하기 in python + (bin, oct, hex 내장함수)

https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr 이 문제는 입력받은 문자열의 개수를 이진법으로 바꿨을때의 값이 1이 될 때까지 아래 과정을 반복하는 것! 1. 입력 받은 문자열에서 0을 모두 제거한다. 2. 1의 개수를 이진법으로 변환한다. 3. 이진법으로 변환한 값이 딱 "1"이 될 때까지 위 과정을 반복한다. def solution(s): zero_cnt=0 # 0의 개수 change_cnt=0 # 변환 횟수 while s!='1': # 1. 0 제거 word='' for i in s: if i=='1': word+=i else: zero_cnt+=1 after_cnt=len(..