본문 바로가기

자바

[프로그래머스] 콜라 문제 https://school.programmers.co.kr/learn/courses/30/lessons/132267 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🖊️문제 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습.. 더보기
[프로그래머스] 가장 가까운 같은 글자 https://school.programmers.co.kr/learn/courses/30/lessons/142086 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🖊️문제 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다. 예를 들어, s="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다. b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 처음 나왔기 때문에 자신의 앞.. 더보기
[프로그래머스] 예산 https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🖊️문제 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없습니다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고 합니다. 물품을 구매해 줄 때는 각 부서가 신청한 금액만큼을 모두 지원해 줘야 합니다. 예를 들어 1,000원을 신청한 부서에는 정.. 더보기
[프로그래머스] 올바른 괄호 https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🖊️문제 괄호가 바르게 짝지어졌다는 것은 '( 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()"는 올바른 괄호입니다. ")()(" 또는 "(()("는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return하고, 올바르지 않은 괄호이면 fasle를 r.. 더보기
[자료구조] 배열과 리스트 배열(Array)이란? 메모리의 연속 공간에 값이 채워져있는 형태의 자료구조이다. 배열의 값은 인덱스를 통해 접근할 수 있고, 선언한 자료형의 값만 저장할 수 있다. 배열 생성·이용하기 int[] nums = {1,2,3,4}; int[] arr = new int[4]; 첫 줄처럼 배열 생성 시 배열에 값을 넣어 생성해 줄 수 있고, 두 번째 줄처럼 배열의 길이를 설정해 생성할 수도 있다. 두 번째 줄과 같이 생성한 경우에는 값을 나중에 대입해준다. 배열 생성 시에는 int, String 등 배열이 어떤 자료형인지를 선언해줘야 한다. 배열의 값을 넣어주는 방법은 특정 인덱스에 해당하는 값을 직접 넣어주거나 반복문을 이용해 넣어주면 된다. for문을 이용해 arr에 {1, 2, 3, 4}를 대입하는 방법은.. 더보기
[스프링 프레임워크] 7. 요청 파라미터 취득하기 1. 요청 파라미터의 종류 1) 요청 파라미터란? 서버에 전송되는 값 종류 요청 쿼리 스트링으로 보내지는 값(GET), 요청 본문에 저장되어 보내지는 값(POST) : 뷰에서 입력값 및 선택한 값이나 숨김 파라미터 등에서 미리 뷰에 입력해둔 값 등 뷰에서 클릭한 버튼의 name 속성값 : 하나의 뷰에 버튼이 여러 개 있을 때 어느 버튼인지 판별할 수 있는 값 URL 경로의 일부로 보내지는 값 : 링크 등으로 URL의 일부로 보내지는 값 2) 요청 파라미터의 취득 방법 @RequestParam 사용 : 파라미터 하나씩 취득 Form 클래스 사용 스프링 MVC가 Form 클래스 내의 필드에 대해 값 저장 요청 파라미터를 모아서 하나의 객체로 받아들임 형변환이나 포맷 지정 가능 링크 등 URL의 일부로 포함된.. 더보기
[스프링 프레임워크] 5. MVC 모델 알아보기 1. MVC 모델 알이보기 1) MVC 모델이란? 프로그램의 처리 역할을 나눠 프로그램을 작성하는 방법 Model, 모델 : 비즈니스 로직 즉, 시스템의 코어 부분, 시스템의 목적을 처리하는 부분을 담당 View, 뷰 : 사용자 입력과 결과 출력 등 시스템에서 표현 부분을 담당 Controller, 컨트롤러 서비스 처리를 담당하는 모델과 화면 표시를 담당하는 뷰를 제어하는 역할 2) MVC 모델의 개요와 이점 서비스 처리 모델, 보기 뷰, 제어 컨트롤러로 분류함으로 인해 프로그램의 독립성이 높아짐 이점 존재 역할 분담을 통해 효율적인 개발 가능 개발하는 엔지니어의 분업화 용이 설계 변경에 유연하게 대응 가능 2. 스프링 MVC 알아보기 1) 스프링 MVC란? 웹 애플리케이션을 간단하게 만들 수 있는 기능.. 더보기
[스프링 프레임워크] 4. 데이터베이스 작업 1. 데이터베이스 생성 1) 데이터베이스란? 데이터를 보관하기 위한 상자 특정한 규칙을 적용해 데이터를 정리해서 보관 2) 관계형 데이터베이스란?(Relational Database) 데이터를 표 형식으로 표현, 여러 표에서 항목의 값 사이에 관계를 맺고 있는 데이터 베잇 표 = 테이블(Table) 테이블과 테이블 간의 관계 = 관계(Relationship) 2. 테이블 생성 1) 테이블이란? 데이터베이스 안에서 실제로 규칙을 가진 데이터가 저장되는 상자 이차원 표 형식으로 데이터를 정리해 저장 2) 레코드와 칼럼 레코드(record) : 테이블의 가로 행, 하나의 레코드는 한 건의 데이터 칼럼(column) : 테이블의 세로 열, 하나의 칼럼은 데이터의 각 요소 3) 제약 조건 테이블에 존재하는 데이터.. 더보기

728x90