LIS 알고리즘 Q www.acmicpc.net/problem/18353 18353번: 병사 배치하기 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 2,000) 둘째 줄에 각 병사의 전투력이 공백을 기준으로 구분되어 차례대로 주어진다. 각 병사의 전투력은 10,000,000보다 작거나 같은 자연수이다. www.acmicpc.net A LIS 알고리즘을 사용하여야 쉽게 풀린다. 대신, 문제에서 내림차순으로 주어지기 때문에 sort로 오름차순 정렬하는게 편리하다. 나의 코드 n = int(input()) array = list(map(int, input().split())) from bisect import bisect_left, bisect_right dp = [array[0]] array.reverse() ..
1. IT 보안관리 (1) IT 보안관리 ISO/IEC 27000 정보보안 관리체계 - 개관 및 용어 27001 ISMS 요구사항 27002 정보보안관리를 위한 실행 규약 27003 ISMS 구현 지침 27004 정보보안관리 지표 및 지표 프레임워크를 위한 지침 27005 정보보안 위험관리 지침 (2) 정보보호관리체계의 프로세스(27005) - PDCA 사이클 계획(Plan) : 보안 정책, 목적 프로세스 및 절차 수립 실행(Do) : 위험처리 계획의 이행 점검(Check) : 위험처리계획을 모니터링하고 유지보수 처리(Act) : 사건, 검토 또는 인지된 변화에 대응하여 정보보안 위험관리를 유지보수, 개선 (3) ISO 27001 2. 정보보호 정책 (1) 정보보호 정책, 절차, 표준, 지침, 기준선 -..
Q www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net A 예외상황을 어떻게 처리할 것인지 고민하는 것이 중요했다. 나의 코드 n = int(input()) array = [0]*n for i in range(n): array[i] = list(input()) def so(array, n): a = 0 # ( 의 개수 b = 0 # ) 의 개수 if array[n].count('(') != array[n].count(')'): re..
1. 접근통제(Access Control) 개념 비인가된 사용자의 정보자산 사용방지, 인가된 사용자가 비인가된 방식으로 정보자산 접근방지, 인가된 사용자가 인가된 방식으로 정보자산을 실수 혹은 의도적으로 접근하여 훼손하는 행위 방지 2. 절차 식별 : 인증 서비스에 스스로를 확인시키기 위하여 정보를 공급하는 주체의 활동 인증 : 주체의 신원을 검증하기 위한 사용 증명 활동 인가 : 인증된 주체에게 접근을 허용하고 특정 업무를 수행할 권리를 부여하는 과정 책임 추적성 : 사용자의 이용을 추적하고 그의 행동에 대해 기록하고 추적하는 활동, 시스템의 각 개인은 유일하게 식별되어야 한다는 원칙, 정보보호에 대한 역할과 책임을 명확하게 규명, 사고 후에도 감사 가능하도록 함 3. 요구사항 입력의 신뢰성, 최소권한..
1. 암호기법 분류 1) 치환암호와 전치암호 - 치환 암호(Substitution Cipher) 비트, 문자, 문자의 블록을 다른 비트, 문자, 블록으로 대체한다. 치환은 평문에서 사용하는 문자의 집합과 암호문에서 사용하는 문자의 집합이 다를 수 있다. 치환암호란 평문의 문자를 다른 문자로 교환하는 규칙이다. 이때 교환규칙은 일대일 대응이 아니어도 상관없다. - 전치 암호(Transposition Cipher) 원문을 다른 문서로 대체하지 않지만, 원문을 여기저기 움직이게 한다. 비트, 문자, 블록을 재배열한다. 전치는 평문에서 사용하는 문자의 집합이 암호문에서 사용하는 문자의 집합과 동일하다. 전치암호란 문자 집합 내부에서 자리를 바꾸는 규칙이고, 이는 일대일 대응이다. 2) 블록 암호와 스트림 암호 ..