본문 바로가기

분류 전체보기

(106)
[알고리즘] 백준20055 - 컨베이어 벨트위의 로봇 java package a0324; import java.util.*; import java.io.*; /* n,k 입력, 내구도가 0인칸이 k이상이면 종료 (벨트회전 -> 로봇 내릴수 있으면 내리기 -> 로봇이동(내구성1감소) -> 로봇 내릴수 있으면 내리기 -> 로봇올리기(내구성1감소) ) -> 한세트 구하는것 : 몇번째 세트에서 종료되는가? 어떻게 구현? -> 벨트: 2차원 배열로 구현 -> 로봇: 1차원 배열로 위치 구현 */ public class 백준20055_컨베이어벨트위의로봇 { static int garo; static int k; static int[][] arr ;//벨트의 내구성 static int[] robot ;//로봇의 위치 public static void main(String[] a..
[알고리즘] 백준16234 - 인구이동 java package a0320; import java.util.*; import java.io.*; /* while문 안에서 매 좌표마다 visit 아니면 bfs를 돌린다 bfs안에서는 사방탐색을 돌려서 범위를 벗어나는 수가 있는지 탐색 있으면 list에도 넣고 큐에도 넣어서 체크 한 집단마다 -> list 1개 -> 집단이 여러개일수있으므로 2차원 리스트로 관리 */ public class 백준16234인구이동 { static ArrayList alllist; static ArrayList tmplist; static int[][] arr; static int[][] visit; static int size ; static int low ; static int high ; static int[] di = {..
[Web 기본] 서블릿(servlet)과 JSP(Java Server Page) 이전글 에서 동적인 페이지에 대한 요청에 응답하기 위해 WAS(Web Application Server)가 있고 효율적인 관리와 수행을 위해 web server와 분리했다고 했다. 이번글 에서는 WAS가 관리하는 servlet과 servlet을 보완한 jsp에 대해 알아보자. ※ 서블릿 클라이언트의 동적인 페이지 요청 -> 웹서버가 was 호출 -> was가 서블릿 실행 위와 같은 과정을 거쳐 서블릿이 실행된다. 서블릿에서는 총 3개의 실행주기를 갖는다. 1) init() 2) service() -> (do get메서드 or do post메서드로 나뉨) 3) destroy() 여기서 중요한것이 서블릿 클래스는 싱글톤 패턴으로서 초기화 과정(init()메서드)과 소멸(destroy()메서드)과정은 딱 1회..
[Web 기본] Web server와 Wep Application Server 이전 글에서 웹의 기본적인 통신 방식, 최소한의 개념들에 대해 말했는데 이번에는 백엔드 위주로 정리를 해보려 한다. 이번 글에서 정리해 볼 키워드는 웹서버, 웹 어플리케이션 서버 등이다. 클라이언트가 서버측에 요청을 하고 서버는 클라이언트가 원하는 결과를 html 형식으로 제공한다고 했다. 사용자가 원하는 페이지가 정적인 페이지(이미 정해져 있는 화면, 바뀌는 요소가 X)라면 상관 없겠지만 동적인 페이지라면 어떻게 해야 할까? 즉, 요구사항에 따라 다른 결과페이지(html)를 제공 해야 한다면 2가지 방식이 있다. 1) 사용자가 요청할 모든 페이지를 미리 만들어놓고 그에 따라 제공 2) 서버 측에서 요구에 맞는 처리를 할 수 있는 로직을 설계 딱봐도 1번은 불가능해 보인다. 규모가 커질수록 엄청난 양의 ..
[Web 기본] 웹(WEB) 동작 이해를 위한 최소한의 개념 web의 동작을 알기위해 알아야할 개념들 서버와 클라이언트 요청과 요청방식 Frontend와 Backend +) 통신과 관련한 개념을 너무 깊이 파고들면 방향이 네트워크에 치우칠 수 있으므로 웹을 중심으로 설명하겠다!! ※ 서버와 클라이언트 서버(server) : 무엇인가를 제공하는 대상을 뜻한다. 클라이언트(client) : 무엇인가를 요청하는 대상을 뜻한다. 웹에서는 글, 이미지, 파일 등 원하는 정보들이 모두 요청과 제공대상에 포함이 된다. 위 그림과 같이 컴퓨터, 스마트폰, 노트북 등 실생활의 검색기능을 갖춘 모든 기기들이 클라이언트라고 볼 수 있다. ※ 요청과 요청방식 클라이언트는 요청하는 측, 서버는 요청한것을 제공하는 측이다. 그럼 어떻게 요청하고 또 그것을 어떻게 제공하는 것일까? 1. 프..
[개발 일기] 22-03-26 분노의 라인 상반기 코테 후기 오전 10시 ~ 오후1시 총 3시간동안 진행됐고 총 6문제를 풀어야했다. 문제 자체는 그리 어렵지 않았으나 또또 또!!!!!!!!!! 고질병이 문제였다. 내가 느끼기에도 문제 자체는 그리 어렵지 않았다. 다만 스스로 무너졌을뿐... 확실하진 않을 수 있지만 내 기억상으로 문자열 관련문제 1개, 문자열+순열 응용 1개, 자료구조 이용한 구현 문제 2개가 기억이 나고 나머지 2개는 기억이 안난다. 문자열 관련 문제가 앞에 1,2번 이었는데 1번은 자꾸 오류가 나서 다시 읽어보니 내가 놓친 부분이 하나 있었고 (약 40분소요 시점, 여기서 이미 망했다고 느낌) 2번 문제는 그 전날 풀었던 백준 문제와 매우 유사해서 자신있게 풀었는데 또 어디가 오류가 있는지 시간초과가 발생했다. 앞번호 문제라 전혀 시간초과가 ..
[MYSQL] 조건문 활용하기 CASE WHEN ELSE 구문 조건에 따라 다른 값을 주고 싶을때 이용하는 키워드 -> CASE WHEN ELSE 구문 일반 프로그래밍 언어에서 if elseif else 구문과 유사하다. 문제 country 테이블에서 이름, 대륙, 수명을 출력하는데, 수명이 80보다 높으면 '장수국가', 60~80살이면 '일반국가', 그 외에는 '단명국가' 라고 이름을 붙이고 '구분'이라는 이름의 열을 추가한다. 새로운 열의 이름을 붙일때는 CASE WHEN ELSE 키워드 끝에 END AS 키워드를 써준다. -> 예시에서는 '구분'이라는 이름을 갖는 열에 조건에 따라 데이터가 입력된다.
[MYSQL] CONCAT() 문자열 이어 붙이기 문자열을 이어 붙여서 출력하고 싶을때 -> CONCAT() 을 이용한다. 물론 문자열이 올 자리에 컬럼명이 와도 된다.