본문 바로가기

전체 글83

01. flutter 2버전 설치 및 환경 설정 flutter 설치 가장 우선 flutter를 사용하기 위해 flutter 설치를 진행한다. https://flutter.dev/docs/get-started/install Install Install Flutter and get started. Downloads available for Windows, macOS, Linux, and Chrome OS operating systems. flutter.dev 해당 홈페이지로 가서 자신에게 맞는 os에 따라 설치를 진행한다. 본인의 os는 window이기 때문에 window버전을 설치진행 하였다. 설치가 완료되면 zip파일의 압출을 풀어둔다. 환경 변수 설정 압축을 풀었다면 flutter 파일의 위치를 설정한다. 본인은 c드라이브에 C:\flutter로 파.. 2021. 9. 4.
React Native에서 typescript 사용하기 우선 TypeScript에 필수적인 라이브러리 설치 진행 처음 만들어둔 프로젝트에서 typeScript 라이브러리를 설치한다. npm install typescript @types/react @types/react-native --save-dev 총 세개의 라이브러리를 설치한다. typescript : TypeScript 코드 작성을 위한 패키지 @types/react: react에서 사용할 타입이 정의된 패키지 @types/react-native: react-native에서 사용할 타입이 정의된 패키지 TypeScript 설정 파일 만들기 처음 폴더에서 tsconfig.json 파일을 생성 아래 내용을 복사하여 저장한다. 위 처럼 root 폴더 내에서 tsconfig.json을 만든다. { "compi.. 2021. 8. 19.
2504 괄호의 값 문제 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 X가 올바른 괄호열이면 ‘(X)’이나 ‘[X]’도 모두 올바른 괄호열이 된다. X와 Y 모두 올바른 괄호열이라면 이들을 결합한 XY도 올바른 괄호열이 된다. 예를 들어 ‘(()[[]])’나 ‘(())[][]’ 는 올바른 괄호열이지만 ‘([)]’ 나 ‘(()()[]’ 은 모두 올바른 괄호열이 아니다. 우리는 어떤 올바른 괄호열 X에 대하여 그 괄호열의 값(괄호값)을 아래와 같이 정의하고 값(X)로 표시한다. ‘()’ 인 괄호열의 값은 2이다. ‘[]’ 인 괄호열의 값은 3이다. ‘(X)’ 의 괄호값은 2×값.. 2021. 8. 14.
14888 연산자 끼워넣기 문제 N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 N-1개의 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다. 우리는 수와 수 사이에 연산자를 하나씩 넣어서, 수식을 하나 만들 수 있다. 이때, 주어진 수의 순서를 바꾸면 안 된다. 예를 들어, 6개의 수로 이루어진 수열이 1, 2, 3, 4, 5, 6이고, 주어진 연산자가 덧셈(+) 2개, 뺄셈(-) 1개, 곱셈(×) 1개, 나눗셈(÷) 1개인 경우에는 총 60가지의 식을 만들 수 있다. 예를 들어, 아래와 같은 식을 만들 수 있다. 1+2+3-4×5÷6 1÷2+3+4-5×6 1+2÷3×4-5+6 1÷2×3-4+5+6 식의 계산은 연산자 우선.. 2021. 8. 14.
파티 문제 N개의 숫자로 구분된 각각의 마을에 한 명의 학생이 살고 있다. 어느 날 이 N명의 학생이 X (1 ≤ X ≤ N)번 마을에 모여서 파티를 벌이기로 했다. 이 마을 사이에는 총 M개의 단방향 도로들이 있고 i번째 길을 지나는데 Ti(1 ≤ Ti ≤ 100)의 시간을 소비한다. 각각의 학생들은 파티에 참석하기 위해 걸어가서 다시 그들의 마을로 돌아와야 한다. 하지만 이 학생들은 워낙 게을러서 최단 시간에 오고 가기를 원한다. 이 도로들은 단방향이기 때문에 아마 그들이 오고 가는 길이 다를지도 모른다. N명의 학생들 중 오고 가는데 가장 많은 시간을 소비하는 학생은 누구일지 구하여라. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두.. 2021. 8. 14.
소수 구하기 문제 자연수 M과 N이 주어질 때 M이상 N이하의 자연수 중 소수인 것을 모두 골라 이들 소수의 합과 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 소수는 61, 67, 71, 73, 79, 83, 89, 97 총 8개가 있으므로, 이들 소수의 합은 620이고, 최솟값은 61이 된다. 입력 입력의 첫째 줄에 M이, 둘째 줄에 N이 주어진다. M과 N은 10,000이하의 자연수이며, M은 N보다 작거나 같다. 출력 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. 문제 해결 위 문제는 소수를 구해야하는 문제.. 2021. 8. 12.
백준 2580 스도쿠 스도쿠 문제 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루어진 정사각형 판 위에서 이뤄지는데, 게임 시작 전 일부 칸에는 1부터 9까지의 숫자 중 하나가 쓰여 있다. 나머지 빈 칸을 채우는 방식은 다음과 같다. 각각의 가로줄과 세로줄에는 1부터 9까지의 숫자가 한 번씩만 나타나야 한다. 굵은 선으로 구분되어 있는 3x3 정사각형 안에도 1부터 9까지의 숫자가 한 번씩만 나타나야 한다. 위의 예의 경우, 첫째 줄에는 1을 제외한 나머지 2부터 9까지의 숫자들이 이미 나타나 있으므로 첫째 줄 빈칸에는 1이 들어가야 한다. 또한 위쪽 가운데 위치한 3x3 정사.. 2021. 8. 11.
TypeScript 제네릭 제네릭(Generic) 제네릭이란 자바에서 클래스나 함수에서 어떤 형태로 값을 받아 들일지 정해지지 못한 상태에서 그 함수나 클래스를 사용할 때 결정하는 프로그래밍 기법을 말한다. 클래스 Class 우선 class를 직접 만들어 봄으로써 사용예제를 살펴보자 class My_class { private a: T; private b: T; private c: T; constructor( item : T, item2: T) { this.a = item; this.b = item2; } add( ): void { this.c = this.a + this.b; } result(): T { return this.c; } } 다음과 같은 class를 작성한다고 가정해보자. 현재 어떤 타입이 들어올지 예상을 할 수 없.. 2021. 8. 10.