분류 전체보기

·Algorithm (PS)
https://www.acmicpc.net/problem/1967 1967번: 트리의 지름 파일의 첫 번째 줄은 노드의 개수 n(1 ≤ n ≤ 10,000)이다. 둘째 줄부터 n-1개의 줄에 각 간선에 대한 정보가 들어온다. 간선에 대한 정보는 세 개의 정수로 이루어져 있다. 첫 번째 정수는 간선이 연 www.acmicpc.net 트리도 결국 그래프에 속한다! 라고 생각하면 조금 더 쉽다 모양은 나무처럼 생겨서 이상하지만,, 결국 우리는 1번 노드에서 가장 멀리 떨어진 정점을 찾고, 그 정점에서 가장 멀리 떨어진 정점을 찾아서 두 가중치를 더해주면 최대값이 된다 이 예시에서도 1번에서 가장 떨어진 노드는 9번이다. 이말은 노드 1에서 출발 했을 때 가중치 값이 가장 큰 노드가 9라는 것이다 그후 9번을 ..
·Algorithm (PS)
시뮬레이션 문제는 많~~~~~~~~~이 풀어봐야겠다 그나저나 청소년상어였던가 그것도 삼성기출인데 미세먼지 안녕이랑 비슷하게 빡 구현 (?) 이다. 난이도는 이게 그나마 아주조금 더 쉬운편 1. 먼지를 이동시킨다 다른 풀이를 참고했는데, 임의의 배열 공간(temp_array)을 만들어서, 그 배열을 이용해서 먼지를 상하좌우로 퍼뜨린것을 저장하고 원래의 배열로 옮기는 방법이다. 2. 공기청정기 가동 -> 위쪽 공기청정기의 x 좌표와 아래쪽 공기청정기 x 좌표를 경계로 전체 정사각형을 분할하여 생각한다. 그리고 벽면에 부딪힐 때 -> 즉 이동가능한 x, y 좌표의 범위를 벗어난 경우일 때, 방향을 차례대로 꺽어주면 된다 (반시계 방향 & 시계 방향) 칸은 원래 배열에 빈칸인 '0'을 앞쪽에서부터 삽입해서 나간..
·Algorithm (PS)
1. 첫번째 시도.. 시간초과난다 from itertools import permutations n = list(input()) result = -1 cases = permutations(n, len(n)) for case in cases: if case[0] == '0': continue else: num = '' for i in case: num += i num = int(num) if num%30 == 0: result = max(result, num) print(result) if 문에서 30의 배수가 아닌 조건을 걸러주면 된다 !! 우선 30의 배수를 떠올려 보면 30, 60, 90, 120, 150, 180, 210 ... 0 으로 끝나는 것을 알 수 있다!! 또한 '3'의 배수의 성질인 각자..
오늘은 제 취미중 하나인 VR게임 리뷰를 해보려고 합니다 저는 게임을 사실 잘 못하고 너무 어렵거나 너무 잔인하면 또 못합니다 ㄱ- 그래서 보통 쿠키런 킹덤같이 아기자기하고 귀여운 모바일게임이나 쿠키런오리지널, 닌텐도 등을 많이 했고 리듬게임류를 정말 좋아한답니다 !! 제가 내돈내산한 게임이 현재 3개정도 있는데 그 게임들에 대해 리뷰해볼게요 우선 비트세이버입니다 !! 진짜 VR게임 게의 레전드같습니다 비트세이버는 VR사면 기본으로 다 사는것 같아요 그만큼 재미있고 이해도 쉽고 대체로 같은 자리에서서 날아오는 비트 조각들을 슬라이스 하는 게임이라서, 멀미감이 없어요!!! VRChat은 한시간정도만 해도 멀미가 심해서 많이 못하겠던데 비트세이버는 3D멀미가 없었습니다 !! 그래서 강추 손님들 왔을때 같이 ..
1. 소프트웨어 설계 #2 DFD(데이터 흐름도) 구성요소에 대한 표기법 처리기 (Process) : 입력된 데이터를 원하는 형태로 변환하여 출력하기 위한 과정으로, DFD에서는 원(O)으로 표시 데이터 흐름 (Data Flow) : DFD의 구성요소들 간의 오가는 데이터 흐름을 나타내며 DFD에서는 화살표(->)로 표시 데이터 저장소 (Data Store) : 데이터가 저장된 장소이고 평행선(=) 으로 표시하며, 평행선 안에는 데이터 저장소의 이름을 넣음 단말 (Terminator) : 부 엔티티는 프로세스 처리 과정에서 데이터가 발생하는 시작과 종료를 나타내고, 사각형으로 표시하며 사각형 안에는 외부 엔티티의 이름을 넣음 #7 요구사항 관리도구 헬릭스 RM(Helix RM), 지라 (Jira), 오르..
·Algorithm (PS)
우선 정말 단순하게 for문 이중으로 돌린 나의 코드 .. 날먹시도 실패 역시 시간초과 난다 # 11660 구간 합구하기 n, m = map(int, input().split()) graph = [] for _ in range(n): graph.append(list(map(int, input().split()))) for _ in range(m): x1, y1, x2, y2 = map(int, input().split()) result = 0 for i in range(x1-1, x2): for j in range(y1-1, y2): result += graph[i][j] print(result) DP로 풀어야 시간 초과가 나지 않는다. 그리고 파이썬 특성상, input() 대신 sys.stdin.rea..
·Algorithm (PS)
https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net 각 노드들에서 x로 갈때 다익스트라 최단경로 알고리즘을 이용해 최단거리를 구하면 노드 i에서 모든 노드까지의 최단 거리 결과를 알 수 있다. 이 결과값을 나는 최단 거리를 저장하는 리스트 dist라고 두었다. dist[x]값이 바로 학생 i가 파티 주최지 x 노드까지 '가는' 데에 소요되는 최단경로 cost이다. 문제는 왕복을 해야 한다는 것인데, 원래는 구해놓은 최단거리에 2배 곱해주면 되지 않나라고..
1. 암호 알고리즘 (Encryption Algorithm) : 데이터의 무결성 및 기밀성 확보를 위해 정보를 쉽게 해독할 수 없는 형태로 변환하는 기법 2. 암호 알고리즘 방식 1) 양방향 방식 a. 대칭키 암호 방식 - 암호화와 복호화에 같은 암호 키를 쓰는 알고리즘이다. 블록 암호 방식 긴 평문을 암호화하기 위해 고정 길이의 블록을 암호화하는 블록 암호 알고리즘을 반복하는 방법 ex) DES, AES, SEED 스트림 암호 방식 매우 긴 주기의 난수열을 발생시켜 평문과 더불어 암호문을 생성하는 방식 ex) RC4 b. 비대칭 키 암호 방식 (= 공개키 암호 방식) - 사전에 개인키를 나눠 가지지 않은 사용자들이 안전하게 통신하는 방식이다. - 공개키로 암호화된 메세지는 반드시 비밀키로 복호화해야 한..
minjiwoo
'분류 전체보기' 카테고리의 글 목록 (60 Page)