프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.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대 목표를 관리적, 물리적, 기술적으로 보장기밀성: 정보의 원본을 인가되지 않은 사용자에게 노출되지 않도록 보장무결성: 정보 송수신 과정에서 원본이 유지되는 것가용성: 인가받은 사용자에 대해 정보를 필요한 시점에 접근 및 사용하도록 보장정보 보안의 목표 기본 용어인증정보 주체인 송신자와 수신자 간의 정보 내용이 변조, 삭제되지 않았는지, 혹은 이들이 정당한지를 확인하는 방법부인 방지송신 부인 방지: 메시지를 송신하고도 송신하지 않았다고 주장하는 송신자의 부인 방지..
이번에는 데이터와 데이터베이스의 간략한 개론입니다. 데이터, 정보, 지식현실에서 아직 아무한테도 발견하지 않은 상태로 존재하지 않는 사실(Fact)그 단순한 여러 사실(Fact)들을 아직 특정 목적에 대해 평가하지 않은 데이터(Data)그 데이터(Data)를 의미 있는 패턴으로 처리 및 가공한 정보(Information)그 정보(Information)를 인간의 해석과 의미를 부여해 집적하여 일반화한 지식(Knowledge)그 지식(Knowledge)을 개인이 이해하고 응용 가능한 상태인 지혜(Wisdom) 데이터 처리 유형일괄 처리 시스템(Batch Processing System)한꺼번에 처리하는 시스템 중심 처리 방법사전 준비 작업과 대기 시간 존재예: 성적 처리 시스템온라인 처리 시스템(Online..
👉🏻 5568번: 카드 놓기from itertools import permutationsn = int(input())k = int(input())cards = [input() for _ in range(n)]result = set()for perm in permutations(cards, k): result.add(''.join(perm))print(len(result))itertools 모듈에 있는 combinations와 permutations 중 즉, 순열과 조합 중 어떤 것을 이용하여 푸는 것인지만 알고 풀이를 쓰다보면 파이썬으로는 금새 풀어낼 수 있는 문제입니다.왜 이렇게 풀었을까?처음에는 브루트포스로도 충분히 풀어낼 수 있는 입력 크기여서 반복문으로 접근해보다가 결국 쉬운 방법을 택하..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr첫 번째 접근: dfsimport sys; sys.setrecursionlimit(10000)def solution(maps): answer = [] dx, dy = [0, 0, -1, 1], [-1, 1, 0, 0] def dfs(x, y): visited[x][y] = True foods = int(maps[x][y]) for i in range(4): nx, ny = x + dx[i], y + dy[i] ..
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krdef convert_time(time): h, m = map(int, time.split(':')) return h * 60 + mdef cal_time(time): total_m = convert_time(time) total_m += 10 h, m = divmod(total_m, 60) return f'{str(h).zfill(2)}:{str(m).zfill(2)}'def solution(book_time): answer, rooms = 0, 0 l = len(boo..