분류 전체보기

프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krfrom collections import dequedef solution(board): dx, dy = [-1, 1, 0, 0], [0, 0, 1, -1] queue = deque() n = len(board) m = len(board[0]) dist = [[float('inf') for _ in range(m)] for _ in range(n)] for i in range(n): for j in range(m): if board[i]..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krdef solution(data, col, row_begin, row_end): answer = 0 data.sort(key=lambda x: (x[col-1], -x[0])) for i in range(row_begin-1, row_end): si = 0 for e in data[i]: si += e % (i+1) answer ^= si return answer정렬과 XOR 연산만 할 줄 알면 간단히 풀 수 있는 ..
이번에는 정보보안과 관련된 최신 기술에 대한 내용입니다. 최신 정보보안 위협1. APT(Advanced Persistent Threat) 공격APT 공격 절차공격자가 취약 시스템 및 직원들의 PC 악성 코드 감염악성 코드로 내부 네트워크 침투내부 시스템 및 인프라 구조 정보 수집중요 정보 유출, 시스템 파괴 또는 서비스 거부 공격APT 대응 방안보안관리 및 운영, 교육 강화: 표적 대상 분석을 바탕으로 보안 체계 재정비엔드포인트 보안: APT의 1차 목표는 엔드포인트. 운영체제 보안 업데이트, 소프트웨어 설치 등접근 권한 관리: 중요 정보 접근 권한 최소화 및 정보 권한 세분화중요 정보 암호화 및 DLP: APT의 최종 목표는 데이터. DLP(Data Loss Prevention) 등의 솔루션 도입2. ..
이번에는 암호화 및 전자서명을 비롯한 정보보안에 기반된 기술들에 대한 내용입니다. 암호평문을 암호문으로 변형하는 과정이 암호화암호문을 평문으로 다시 바꾸는 과정이 복호화이 두 변환 과정에서 사용되는 수학적 기능이 암호 알고리즘 !암호 알고리즘은 암호화 & 복호화를 하기 위해 키(Key)를 사용암호 기술암호화 기술대칭 키 암호 방식: 암호화 키 = 복호화 키공개키 암호 방식: 암호화 키 ≠ 복호화 키암호 프로토콜기본 암호 프로토콜: 개인 식별 및 인증, 전자서명 등암호 프로토콜: 전화 결제, 전자화폐 등암호 알고리즘송신자는 평문 P를 암호화 키 KE + 암호화 알고리즘 E를 이용하여 암호문 C 생성 후 수신자에게 전달계산적 불가는 일반적으로 암호문 C가 복호화 키를 모르는 상태에서는 그 내용을 알 수 없어..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krdef solution(n, k): def factorial(n): if n 조건에 맞는 순열을 permutations 없이 구현해보는 문제였습니다.왜 이렇게 풀었을까?permutations를 사용하면 너무나도 간단히 풀릴 문제라, 당연히 이 방법은 아니겠다 하는 생각에 '그렇다면 다른 방법으로 풀 수가 있나?'를 먼저 떠올려보았습니다.수학적인 접근법이 필요해보였고, 이를 위해서 순열의 구조를 이해하고 그 패턴을 살펴보기로 하였습니다.n개의 원소가 주어졌을 때, 순열의 첫 번째 원소를 선택하는 방..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krfrom itertools import permutationsdef solution(expression): answer = 0 operators = ['+', '-', '*'] nums, ops = [], [] num = '' for char in expression: if char.isdigit(): num += char else: nums.append(int(num)) num = "" ..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krfrom collections import dequedef solution(maps): n, m = len(maps), len(maps[0]) start, end, l_point = None, None, None for i in range(n): for j in range(m): if maps[i][j] == 'S': start = (i, j) elif maps[i][j] == 'L': ..
이번에는 정보 보안의 개념과 관련 용어입니다. 정보 보안정보 수집, 가공, 저장 과정 등에서 훼손이나 변조 등을 방지하기 위해 정보를 보호하는 것인터넷 등의 공간에서 개인 프라이버시를 보장하고 인터넷 범죄를 차단해야 할 필요성 대두정보 보안의 3대 목표를 관리적, 물리적, 기술적으로 보장기밀성: 정보의 원본을 인가되지 않은 사용자에게 노출되지 않도록 보장무결성: 정보 송수신 과정에서 원본이 유지되는 것가용성: 인가받은 사용자에 대해 정보를 필요한 시점에 접근 및 사용하도록 보장정보 보안의 목표 기본 용어인증정보 주체인 송신자와 수신자 간의 정보 내용이 변조, 삭제되지 않았는지, 혹은 이들이 정당한지를 확인하는 방법부인 방지송신 부인 방지: 메시지를 송신하고도 송신하지 않았다고 주장하는 송신자의 부인 방지..
ReJoy
'분류 전체보기' 카테고리의 글 목록 (12 Page)