목록전체 글 (103)
juuuding

라이브러리 *Gradle은 의존관계가 있는 라이브러리를 함께 다운한다. 1. 스프링 부트 라이브러리 - spring-boot-starter-web + spring-boot-starter-tomcat: 톰캣 (웹서버) + spring-webmvc:스프링 웹 MVC - spring-booit-starter-thymeleaf: 타임리프 템플릿 엔진(View) - spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅 + spring-boot ~ spring-core + spring-boot-starter-logging ~ logback, slf4j 2. 테스트 라이브러리 - spring-boot-starter-test + junit: 테스트 프레임워크 + mockito: 목 라이브러..
1.스트림과 데이터의 이동 1. '입력'과 '출력'은 무엇인가? 프로그램 중심으로 프로그램 안으로 데이터가 흘러들어오는 것이 입력이고, 프로그램 밖으로 데이터가 흘러 나가는 것이 출력이다. 대표적인 입력 장치로는 키보드가 있고, 파일도 입력의 대상이 될 수 있다. 그리거 대표적인 출력 장치로는 모니터가 있고, 파일도 출력의 대상이 될 수 있다. 마우스, 프린터, 화상 카메라와 같은 장치들도 입출력 장치에 해당한다. 2. 데이터의 이동 수단이 되는 스트림 모니터와 키보드를 대상으로 데이터를 입출력 하기 위해서는 이들을 연결시켜주는 다리가 필요한데, 이 다리 역할을 하는 매개체를 '스트림(stream)'이라고 한다. 따라서 prinft 함수와 scanf 함수로 데이터를 입출력 할 수 있는 근본적인 이유는 스..
1. 함수 포인터와 void 포인터 1. 함수 포인터이 이해 함수는 매모리 상에 저장된 함수의 주소 값을 의미한다. 배열의 이름이 배열의 시작주소 값을 의미하듯, 함수의 이름도 함수가 저장된 메모리 공간의 주소 값을 의미한다. 배열의 이름과 마찬가지로 함수의 이름도 그 형태가 상수이다. 함수 이름의 포인터 형은 반환형과 매개변수의 선언을 통해서 결정짓도록 약속되어 있다. int SimpleFunc (int num){}의 포인터 형을 말하자면 "반환형이 int이고 매개변수로 int형 변수가 하나 선언된 포인터 형이다," 2. 적절한 함수 포인터 변수의 선언 함수의 포인터 변수에는 반환형 정보와 매개변수 선언의 정보가 모두 표현되어 있어야한다. 따라서 다음과 같이 작성하여 함수 포인터 변수를 선언한다. "i..

문제 [문제 링크] https://www.acmicpc.net/problem/2564 2564번: 경비원 첫째 줄에 블록의 가로의 길이와 세로의 길이가 차례로 주어진다. 둘째 줄에 상점의 개수가 주어진다. 블록의 가로의 길이와 세로의 길이, 상점의 개수는 모두 100이하의 자연수이다. 이어 한 줄 www.acmicpc.net [문제] 동근이는 무인 경비 회사 경비원으로 항상 대기하고 있다가 호출이 들어오면 경비차를 몰고 그 곳으로 달려가야 한다. 동근이가 담당하고 있는 곳은 직사각형 모양의 블록으로 블록 중간을 가로질러 차가 통과할만한 길이 없다. 이 블록 경계에 무인 경비를 의뢰한 상점들이 있다. 예를 들어 가로의 길이가 10, 세로의 길이가 5인 블록의 경계에 무인 경비를 의뢰한 3개의 상점이 있다고..
문제 [문제 링크] https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net [문제] N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4..
문제 [문제 링크] https://www.acmicpc.net/problem/1236 1236번: 성 지키기 첫째 줄에 성의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 성의 상태가 주어진다. 성의 상태는 .은 빈칸, X는 경비원이 있는 칸이다 www.acmicpc.net [문제] 영식이는 직사각형 모양의 성을 가지고 있다. 성의 1층은 몇 명의 경비원에 의해서 보호되고 있다. 영식이는 모든 행과 모든 열에 한 명 이상의 경비원이 있으면 좋겠다고 생각했다. 성의 크기와 경비원이 어디있는지 주어졌을 때, 몇 명의 경비원을 최소로 추가해야 영식이를 만족시키는지 구하는 프로그램을 작성하시오. [입력] 첫째 줄에 성의 세로 크기 N과 가로 크..
문제 [문제 링크] https://www.acmicpc.net/problem/1267 1267번: 핸드폰 요금 동호가 저번 달에 이용한 통화의 개수 N이 주어진다. N은 20보다 작거나 같은 자연수이다. 둘째 줄에 통화 시간 N개가 주어진다. 통화 시간은 10,000보다 작거나 같은 자연수이다. www.acmicpc.net [문제] 동호는 새악대로 T 통신사의 새 핸드폰 옴머나를 샀다. 새악대로 T 통신사는 동호에게 다음 두 가지 요금제 중 하나를 선택하라고 했다. 영식 요금제 민식 요금제 영식 요금제는 30초마다 10원씩 청구된다. 이 말은 만약 29초 또는 그 보다 적은 시간 통화를 했으면 10원이 청구된다. 만약 30초부터 59초 사이로 통화를 했으면 20원이 청구된다. 민식 요금제는 60초마다 1..
1. 2차원 배열이름의 포인터 형 1. 1차원 배열이름의 포인터 형과 2차원 배열이름의 포인터 형 int arr[10]과 같은 1차원 배열이름 arr의 포인터 형은 int형 포인터이다. 그리고 앞서 int* parr[20]의 parr이 int **형 포인터임을 배웠다. 따라서 2차원 배열의 이름이 더블 포인터 형이라는 오해를 절대로 해서는 안 된다. 2. 2차원 배열이름이 가리키는 것들은? int arr2d[3][3]과 같은 2차원 배열에서, 배열이름 arr2d가 가리키는 것은 인덱스 기준으로 [0][0]이다. 더하여 2차원 배열의 경우에는 arr2d[0], arr2d[1], arr2d[2]도 의미를 갖는데, 각각 1행 2행 3행의 첫 번째 요소를 가리킨다. 이처럼 arr2d와 arr2d[0]의 출력 값..