본문 바로가기
반응형

Computer Science86

언어, 문법 형식언어 (Formal Language) 형식언어에서는 정확성이 필수적이므로, 정확성을 위해 언어는 스트링의 집합으로 표현됩니다. 영어, 한국어 등의 자연어와의 차이점이 정확성 요구의 유무라고 볼 수 있습니다. 스트링에 앞서 기호(Symbols)를 먼저 설명하자면, 한 개 이상, 유한개의 기호로 구성된 집합으로 Decimal의 경우 0 ~ 9 라는 기호로 구성된 집합이고, Binary의 경우 0, 1 이라는 기호로 구성된 집합이라고 보시면 됩니다. 스트링은 유한개의 기호들을 나열한 것입니다. 모든 기호는 그 자체로 스트링이 될 수 있고, 아무런 기호도 없는 스트링을 빈 스트링이라고 하는데, 그 존재를 설명하기 위해 특수 기호 λ(Lambda) 로 사용합니다. 하지만, 람다기호는 기호가 되지는 않습니다. .. 2023. 12. 24.
집합, 관계 계산이론 내용에 들어가기 앞서 수학적인 내용을 정리하는 부분입니다. 집합 (Set) 집합은 원소들의 모음입니다. 표기는 다음과 같이 작성합니다. x ∉ S : x는 집합 S의 원소가 아님. x ∈ S : x는 집합 S의 원소. 집합 중에서 원소의 개수가 유한한 집합을 유한(Finite) 집합이라고 하고, 원소의 개수가 무한한 집합을 무한(Infinite) 집합 이라고 합니다. 집합의 정의는 크게 2가지로, 원소 나열법(Enumeration), 조건 제시법(Comprehension) 이 있습니다. 원소 나열법은 집합의 원소를 쭉 작성하는 방법이고, 조건 제시법은 어떤 조건 x를 작성해두는 것으로 해당 집합에는 조건 x에 맞는 원소만 있습니다. ex) {i | i > 0, i % 2 == 1} 해당 조건으로.. 2023. 12. 22.
기호, 의미, 계산 (Syntax, Semantics, Computation) 기호 (Syntax)에 의한 형식 언어 언어는 기호(시그마로 표기)로 이루어진 스트링의 집합으로 구성이 됩니다. 형식 언어(Formal Language)는, 모든 원하는 스트링이 빠짐없이 포함되고, 불필요한 스트링이 첨가되지 않는 것으로, 그 과정에서 집합(Set)이나 연산자(Set Operation)을 사용하게 됩니다. ex) Language L1, L2가 있을 때, L1 ∩ L2, L1 U L2, L1 - L2 등등의 Set Operation을 활용하여 새로운 Language를 정의할 수 있습니다. 현재 컴퓨터에서 사용하는 모든 언어는 형식 언어가 사용되고 있습니다. 언어는 제일 단순한 형태인 정규 언어(Regular Language)와 정규 언어에서 두 문자의 발생 빈도 수가 연관되는 문맥 자유 언.. 2023. 12. 22.
[백준 2293번] 동전 1 (C++, Python3) https://www.acmicpc.net/problem/2293 2293번: 동전 1 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. www.acmicpc.net 이번 포스트에서는 백준 알고리즘 문제인 동전 1을 포스트하겠습니다. 해당 문제는 solved.ac 기준 골드 5에 위치한 문제입니다. 먼저 문제입니다. N가지의 동전과 K원을 입력받고 K원을 만들 수 있는 경우의 수를 출력해야합니다. 해당 문제는 K원을 만드는 경우의 수를 찾는 문제입니다. 따라서, N가지 동전으로 K원을 만들 때, N - 1개의 동전으로 만들 수 있는 경우의 수를 합산하여야합니다... 2023. 10. 12.
반응형