문제 https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 어떻게 풀 것인가? 이 문제를 보자마자 떠올랐던 것은 바로 "투포인터를 이용한 이분탐색 알고리즘" 이었다. 이분 탐색과 result 배열을 이용하여 계속해서 0과 가까운 것을 비교하면서 찾아간다. 이것은 아마 코드를 보는 것이 이해가 더 빠를 것이다. 풀면서 놓쳤던점 X 이 문제를 통해 얻어갈 것 이분탐색에 대한 응용 내 코드 import java.io.Bu..
문제 https://www.acmicpc.net/problem/2225 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 어떻게 풀 것인가? 문제는 상당히 짧다. 하지만 고민은 많이해야하는 문제였다. 우선적으로 문제에 대해서 고민을 하면 다이나믹 프로그래밍이라는 것을 알 수 있다. 하지만 다이나믹 프로그래밍에서 중요한 점화식에 대해서 고민이 상당히 오래걸렸다. (내가 오랜만에 풀어서 그런걸 수도 있다....) 나는 문제를 2시간 가량 고민하다가 결국엔 다른 분의 풀이를 참조했다. 아래를 잘 보자. 1. N=1일때 K=1인경우 : 1가지 (1) K=2인경우 : 2가지 (1+0, 0+1) K=3인경우 : 3가지 (0+1+1, 1+0+1, 1..
이 글은 저의 2023년 11월 ~ 12월까지의 회고록입니다. 이전의 회고록은 https://superohinsung.tistory.com/251 아닌 것 같았다. 알고리즘 실력이 올랐는가? -> 아닌 것 같았다. CS를 탄탄하게 잡았는가? -> 아닌 것 같았다. 성장하는 느낌을 받고 싶었는데, 내가 정말 치열하게 살았는가? -> 아닌 것 같았다. 올 한해 동안 취업에서 쓴 맛을 봤고 다양한 원인이 있었겠지만 그냥 내 순수 실력 부족이겠구나 라는 생각이 많이 들었다. 그래서 그러한 실력을 상승 시킬 준비를 다시해서 취업 도전을 해봐야겠다는 생각을 했다. 사실 나는 싸피만 오랫동안 바라봐왔다. 학점이 높은 것도 아니고 (정말정말 매우매우 낮다....) 이로 인해서 사실 걱정이 많았다. 우선적으로 대기업 원..
문제 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 어떻게 풀 것인가? 처음에 문제를 이해하는 것이 많이 어려웠다. 주어진 문제에 따르면 현재 칸이 아직 청소되지 않은 경우, 현재 칸을 청소한다. 현재 칸의 주변 4칸 중 청소되지 않은 빈 칸이 없는 경우, 바라보는 방향을 유지한 채로 한 칸 후진할 수 있다면 한 칸 후진하고 1번으로 돌아간다. 바라보는 방향의 뒤쪽 칸이 벽이라 후진할 수 없다..
본 포스팅은 학교 수업에서 제출했던 과제입니다. 5G란 무엇인가 5G통신은 쉽게 말하면, ‘1차선 도로가 10차선 도로로 변했다’는 것입니다. 대역폭이 넓어졌으니 지금보다 10배 이상 더 빠르게 음성, 영상 등을 주고 받을 수 있습니다. 뒷 부분에 작성을 하겠지만, 이 때문에 초고속, 초저지연성, 초연결성등이 5G의 가장 큰 특징으로 꼽힙니다. 기존의 4G의 속도는 1Gbps입니다. 하지만 5G 기술의 이론적인 최대 속도는 20Gbps 입니다. 위와 같은 빠르다는 특징으로 현대사회에서 생활적으로 산업적으로 많은 변화를 가져다 주고 있습니다. 5G 기술은 어떻게 동작할까? 그리고 특징은 무엇이 있을까? 5G 기술은 네트워크 아키텍처 전반에서 여러가지 발전된 요소를 채택하였습니다. 먼저, 5G는 다양한 주파..
본 포스팅은 학교 수업 과제였습니다. 1. 각 계층의 이름을 쓰고, (국문 + 영문) 계층 (Layer) 네트워크 접속 계층 - Network Access Layer 인터넷 계층 - Internet Layer 전송 계층 - Transport Layer 응용 계층 - Application Layer 2. 각 계층이 수행하는 주요 기능을 기술하고, (1). 네트워크 액세스 계층 네트워크 액세스 계층은 물리적인 네트워크 매체와 상호작용하여 데이터 프레임을 송수신하고 괸리한다. 이 계층에서 주요기능은 데이터 프레임을 전기적 신호로 변환하여 물리적 매체를 통해 전송하며, 노드 간 데이터 송수신을 관리하기위해서 MAC(Media Access Control) 주소를 사용하여 목적지 노드를 식별한다. 또한 다중 접근 ..
본 포스팅은 대학교 과제였습니다. 문제 1번 크기가 5인 배열 하나를 만든다. scanf로 정수 입력 4개를 받아 배열에 순서대로 저장한다. 배열의 마지막 원소에는 입력된 4개 값의 합을 저장한다. 이후 배열값 5개를 순서대로 출력하시오. 입력: 2 5 4 7 2 5 4 7 18 void Problem1() { printf("-------문제1--------\n"); int arr[5]; printf("입력: "); scanf("%d %d %d %d", &arr[0], &arr[1], &arr[2], &arr[3]); arr[4] = arr[0] + arr[1] + arr[2] + arr[3]; for(int i = 0; i < 5; i++){ printf("%d ", arr[i]); } printf("..
본 포스팅은 학교 수업을 듣고 정리한 내용입니다. 객체의 기본 개념 객체 개념 현실 세계는 객체들의 집합 사람, 책상, 자동차, TV등 객체는 자신만의 고유한 구성 속성 자동차 : 제조사, 자동차 번호 사람 : 이름, 주민번호 자바스크립트 객체 구성 여러 개의 프로퍼티(Property)와 메소드로 구성 프로퍼티 : 객체의 고유한 속성(변수) 메소드(method) : 함수 브라우저가 제공하는 기본 객체(코어 개체)들의 종류 자바스크립트는 객체 기반 언어, 객체 지향 언어가 아님 자바 스크립트 객체의 유형 코어 객체 자바스크립트 언어가 실행되는 어디서나 사용 가능한 기본 객체 기본 객체로 표준 객체 Array, Date, String, Math 타입 등 웹 페이지 자바스크립트 코드에서 혹은 서버에서 사용 가..
본 포스팅은 학교 수업을 듣고 정리한 내용입니다. 자바 스크립트 식과 연산자 산술 연산자 5가지 : 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%) let x = 32; let total = 100 + x*2/4 - 3; // total은 113 연산의 결과는 항상 실수이다. let div = 32/10; // div = 3.2 산술 연산 실습 코드 산술 연산 증감 연산자 연산자 내용 연산자 내용 a++ a를 1증가하고 증가 전의 값 반환 ++a a를 1증가하고 증가된 값 반환 a-- a를 1감소하고 감소 전의 값 반환 --a a를 1감소하고 감소된 값 반환 대입 연산자 오른쪽 식의 결과를 왼쪽 변수에 대입 연산자 내용 연산자 내용 a = b b값을 a에 대입 a &= b a = a ..
문제 https://www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 어떻게 풀 것인가? 문제를 처음 봤을 때 우선적으로 백트레킹을 이용한 순열과 조합을 떠올렸다. 하지만 중요한 한 부분을 놓쳐서 계속 문제를 틀렸는데, 이는 문제에서 "암호는 서로 다른 L개의 알파벳 소문자들로 구성되며 최소 한 개의 모음(a, e, i, o, u)과 최소 두 개의 자음으로 구성되어 있다고 알려져 있다." 라는 부분을 놓쳤다. 이에 그래서 모음의 갯수를 카운트하는 로직을 구성하여 문..