본문 바로가기
반응형

전체 글101

[ 알고리즘 ] 코딩 - 백준 20055번 - 컨베이어 벨트 위의 로봇.java 문제 링크 www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 문제개요 BOJ 20055번 - (자바)컨베이어 벨트 위의 로봇 - 시뮬레이션 길이가 N인 기기를 길이 2N의 벨트가 돌고있다. 1번위치는 로봇을 올리는 곳이며 N위치에 도달하면 로봇은 땅으로 내려간다(대기열에서 제거) 무조건 1번에서 추가되고, N위치에서 제거된다 로봇을 건너편으로 넘기려고 할 때, 아래와 같은 일이 순서대로 일어난다. 벨트가 한 칸 회전한다. 가장 먼저 벨트에.. 2021. 4. 14.
JavaScript - 데이터 타입과 연산자(객체타입 / 참조 타입의 특성) 자바스크립트 참조 타입(객체 타입) 자바스크립트에서 숫자, 문자열, 불린 값, null, undefined 같은 기본 타입을 제외한 모든 값은 객체다. 즉, 배열, 함수, 정규표현식 모두 객체로 표현된다. 자바스크립트에서 객체는 단순히 '이름(key): 값(value)' 형태의 프로퍼티들을 저장하는 컨테이너로서, 해시 자료구조와 유사하다. 자바스크립트에서 기본 타입은 하나의 값만을 가지는 데 비해, 참조 타입인 객체는 여러 개의 프로퍼티들을 포함할 수 있으며, 이러한 객체의 프로퍼티는 기본 타입의 값을 포함하거나, 다른 객체를 가리킬 수도 있다. 이러한 프로퍼티의 성질에 따라 객체의 프로퍼티는 함수로 포함할 수 있으며, 자바스크립트에서는 이러한 프로퍼티를 메서드라고 부른다. 객체 생성 자바스크립트의 객체.. 2021. 4. 13.
[ 알고리즘 ] 코딩 - Programmers - 숫자게임.java 문제 링크 programmers.co.kr/learn/courses/30/lessons/12987 코딩테스트 연습 - 숫자 게임 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 programmers.co.kr 문제 개요 프로그래머스 - Level 3 - (자바) 숫자게임 - 우선순위 큐를 이용한 Heap 정렬 B가 A보다 큰 숫자의 갯수 중 최대가 되는 경우 얼마인가? 하는 문제 로직 Step 01. A배열과 B배열을 Heap 정렬하면서 저장할 우선순위큐를 2개 준비한다. Step 02. A배열과 B배열을 오름차순 PQ에 저장한다. Step 03. A_PQ.. 2021. 4. 12.
JavaScript - 데이터 타입과 연산자(기본타입) 자바스크립트의 데이터 타입과 연산자에 관해서 공부하자! 기본타입 - 숫자 / 문자열 / 불린값 / null / undefined 자바스크립트 기본 타입 자바스크립트의 기본 타입은 숫자, 문자열, 불린 값을 비롯해, null, undeined라는 타입이 있다. 해당 변수가 어떤 타입을 가지고 있는지 확인하고 싶을 때는 typeof 연산자를 이용하면 된다! 자바스크립트는 느슨한 타입 체크 언어이다. 즉, char, int, float 등 예약어를 이용해 변수의 타입을 지정해줄 필요가 없다. 타입을 미리 정하지 않고, var / let 키워드로 변수를 선언한다. ( var는 전역, let은 지역으로 이해하자 ) 이때, 어떤 타입의 데이터라도 저장하는 것이 가능하다! 어떤 형태의 데이터를 저장하느냐에 따라 해당.. 2021. 4. 11.
JavaScript - 자바 스크립트의 기본 개요 Computer Science - 자바스크립트의 기본 개요 소개 자바스크립트는 웹브라우저에서 동작하는 스크립트 언어이다. 초창기에 자바스크립트는 웹 페이지 제작에 있어서 보조적인 기능을 수행하기 위한 용도로써 사용했다. 대부분의 로직은 주로 웹 서버에서 실행되었고, 클라이언트 웹 브라우저에서는 서버로부터 받은 HTML과 CSS, 데이터로 렌더링 해주는 수준이었다. 하지만 지금은 웹이 발전하면서, 웹 아키텍처에도 여러 가지 크고 작은 변화가 일어났다. 특히, 과거에 서버에서 담당하는 역할들이 상당 부분 웹 브라우저로 이동하였고, 자바스크립트는 이 변화의 중심에 서게 된다. 게다가 JQuery의 등장으로 보다 쉽게 DOM (Document Object Model)을 핸들링하게 되면서 더 많은 발전을 이루었다.. 2021. 4. 10.
[ 알고리즘 ] 코딩 - Programmers - 최고의 집합.java 문제 링크 programmers.co.kr/learn/courses/30/lessons/12938 코딩테스트 연습 - 최고의 집합 자연수 n 개로 이루어진 중복 집합(multi set, 편의상 이후에는 "집합"으로 통칭) 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만 programmers.co.kr 문제 개요 프로그래머스 - Level 3 - (자바) 최고의 집합 - 규칙 찾기, 나누기 규칙? 자연수 n개로 이루어진 중복 집합 중 각 원소의 합이 s가 되고, 그중에서도 각 원소의 곱이 최대인 것을 구하는 문제 로직 이 문제는 규칙을 찾는 문제이다. 3가지의 규칙에 맞게 코드를 구현하자 Step 01. n 이 s보다 큰 경우에는 어떠한 .. 2021. 4. 10.
[ 알고리즘 ] 코딩 - Programmers - 가장긴팰린드롬.java 문제 링크 programmers.co.kr/learn/courses/30/lessons/12904 코딩테스트 연습 - 가장 긴 팰린드롬 앞뒤를 뒤집어도 똑같은 문자열을 팰린드롬(palindrome)이라고 합니다. 문자열 s가 주어질 때, s의 부분문자열(Substring)중 가장 긴 팰린드롬의 길이를 return 하는 solution 함수를 완성해 주세요. 예를들 programmers.co.kr 문제 개요 프로그래머스 - Level 3 - (자바)가장 긴 팰린드롬 - 완전탐색, 투포인터 형식 앞뒤를 뒤집어도 똑같은 문자를 팰린드롬이라고 하고, 이 팰린드롬의 길이 중 가장 긴 것을 찾는 문제 이런 경우에도 팰린드롬이다 s = "a", s = "abcd" -> 길이 1인 팰린드롬 s = "aa" s = "a.. 2021. 4. 10.
[ Computer Science ] Network - 대칭키 & 공개키 컴퓨터 사이언스(CS) - 네트워크 부분 - 대칭키와 공개키 대칭키? 암호화와 복호화에 같은 암호키(대칭키)를 사용하는 알고리즘 동일한 키를 주고받기 때문에, 매우 빠르다는 장점이 있다. 하지만 대칭키를 전달하는 과정에서 해킹하는 위험에 노출된다. 공개키? 암호화와 복호화에 사용하는 암호키를 분리한 알고리즘. 비대칭 암호 자신이 가지고 있는 고유한 암호키(비밀키)로만 복호화 할 수 있는 암호키(공개키)를 대중에게 공개한다. 공개키 암호화 방식 진행 과정 1. A가 웹 상에 공개된 'B의 공개키'를 이용해 평문을 암호화 해서 B에게 보낸다. 2. B는 자신의 비밀키로 복호화한 평문을 확인, A의 공개키로 응답을 암호화하여 A에게 보낸다. 3. A는 자신의 비밀키로 암호화된 응답문을 복호화한다. - 대칭키의.. 2021. 4. 9.
[ 알고리즘 ] 코딩 - 백준 2473 - 세용액.java 문제 링크 www.acmicpc.net/problem/2473 2473번: 세 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 3 이상 5,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 www.acmicpc.net 문제개요 BOJ 2473 - (자바) 세용액 - 투포인터 두용액이 세개로 늘어난 확장판 so-cute-danu-dev.tistory.com/78 [ 알고리즘 ] 코딩 - 백준 2470 - 두 용액.java 문제 링크 www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄.. 2021. 4. 8.
반응형