전체 글
-
[2018 윈터코딩][ python ] 스킬트리코딩/알고리즘 2019. 3. 2. 00:14
광고를 무심히 눌렀다가 잠깐 접하게 된문제갑자기 파이썬을 해보고 싶어서 잠깐 풀었다올만에 하는거라 기억이 잘 안나서 꾸역꾸역했다나는 스킬트리 순서를 딕셔너리에 기억한후에그다음에 주어진 스킬에 대해서도 딕셔너리에 넘버링한후에그 둘을 비교하는 방식으로 했다 그렇게 효율적인 코딩은 아닌듯 싶기도하고...다른사람들 풀이를 보니 ㅎㄷㄷ하다나만 이렇게 길게 짠거같다...주륵..한참 멀은거 같다.ㅠdef solution(skill, skill_trees): answer = 0 skillSeqDic= {} seq = 1 for s in list(skill): skillSeqDic[s] = seq seq += 1 for skill in skill_trees: isPossible = True skillDic = {} se..
-
[ 백준 ][ 자바 ][ 1260 ] DFS와 BFS코딩/알고리즘 2019. 3. 1. 22:42
개념잡기엔 좋은 문제 같다.실패가 뜬 문제길래 봤었는데 파이썬으로 풀다 못풀었던 문제였다.dfs를 잘 모르는 상황에 bfs는 2차원 배열에서만 푸는 방법만 익히고 있어서그래프와 관련된 문제가 나오면 벙벙 하는 상황이었다 (지금)뭐...제대로 이해를 못하고 있단 얘기겠지그래서 이번 기회에 한번 풀어봤다 dfs는 일반적으로 재귀로 구현하는 것 같다 stack도 사용하지만 코드가 컴팩트한 측면에서는 재귀가 훨씬 좋아보인다문제의 예제에서 나와있는 정점들을 그림으로 그려본후에 그 다음에 방문할 점을 그려보니 구현이 매우 쉬워졌다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import jav..
-
[ 백준 ][ 자바 ][ 2146 ] 다리 만들기카테고리 없음 2019. 2. 21. 23:03
문제도 이해가 가고 푸는 법도 대강 알겠는데 어떤 문제 떄문에 결국 못풀었던 문제였었는데 ( 자그마치 4달전이라 함..)오늘 다시 도전했다.저번에 풀었던 코드와 비교해보니 섬세함이 줄었는데대신 깔끔함과 가독성이 증가했다. ( 저번 코드에 비해서 ) 섬과 섬 사이에서 가장 가까운 다리를 놓는 방식인데 1. 섬과 섬을 구분 하고.2 거기서 bfs로 가장 가까운 섬과의 거리를 재서 출력하면 된다. 초기화를 신경 안쓰고 다른 섬을 찾았을 경우를 구분 해주니 정답으로 인정되었다 예전 풀었던 문제를 보니까..기억이 안난다...그리고뭔가 예전의 열정이 가끔 그립다 ㅠㅠ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre..
-
[ 백준 ][ 자바 ][ 10026 ][ 적록색약 ]코딩/알고리즘 2019. 2. 9. 14:04
오늘은 조금 난이도 있는 문제를 풀어볼까 했는데 친구 밥사주는 약속이 있어 간단한 문제를 얼른 찾아서 풀고 가야겠다 싶어서 풀었다.이 문제는 일반 bfs에서 간단한 분기만 타주면 된다 문제에 출력은 두가지를 요구하는데 일반인과 , 적록색약이 볼수있는 색상 구분수다적록색약은 빨강과 초록을 같은색으로 인지하는데 그점에 유의하여 R과 G를 같은색상이라고 생각하면 아주 간단하게 풀린다 . import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; /* ..
-
[ 백준 ] [ 2583 ] [ 자바 ] 영역구하기코딩/알고리즘 2019. 2. 8. 16:40
간단한 문제 영역을 구하는 건 간단하다 . 약간 문제에서 헷갈릴수 있는게평소 알던 좌표 위치랑 정반대에 있다처음에는 좌표 컨버팅 모듈을 만들어야하나했는데그냥 좌표는 평상시 배열좌표를 써도 무방하다고 판단된다. 어처피 뒤집으면 똑같으니 ㅎ직사각형을 배열에다가 입력한다음에bfs로 문제를 해결해나가면 된다. 한방에 클리어는 정말 오래간만인거같다..import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Collections; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokeniz..
-
[ 백준 ][ 3184 ][ 양 ]코딩/알고리즘 2019. 1. 29. 22:44
백준 3184 양 문제오래간만에 다시 알고리즘 문제를 잡는다.너무 바빠서 손도 못댔다가 하루하루 하면서 다시 감을 익혀 보려고 한다. 감잡기용으로 전에 푼거말고 새로운 문제를 풀어보고 싶었는데 (사실 다 기억이 안남)간단해보이고 무엇보다도 정답률이 높아 선택했다구역마다 양과 늑대의 수를 세서 조건에 맞춰출력해주는 간단한 문제였다답지를 안보고 기억을 끄집어내면서 풀었는데얼추 기억은 나는 것 같다 그나저나 아이패드 가지고 싶다...ㅎ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import ja..
-
mysql 외부 접속카테고리 없음 2018. 11. 4. 15:21
기존에 있는...redis 서버가 해킹당했다..주륵 방화벽 다내려놓고...모든 곳에서 연결하도록 해놓으니 아주 좋은 허니팟이 된 모양.. 기존 서버를 반납하고 새롭게 다시 만들었다 이번엔 mysql을 설치했는데 내 컴퓨터에서 workbench를 통해서 데이터를 넣고 싶어졌다. 유저를 만든후에 그 유저에게 권한을 주고 내 컴퓨터에서 workbench로 접근하자 $mysql $create dababase mydb; $use mydb; $grant all privileges on *.* to '유저명'@'%' identified by '비밀번호';grant 명령어는 권한을 주는 명령어인데 모든 권한을 저 계정에게 부여한다는 명령어다. 생성후 내 컴퓨터에서 접속해본다. + 버튼을 클릭해준다. connection..
-
파이썬 openpyxl을 이용한 엑셀 쓰기카테고리 없음 2018. 11. 2. 22:25
오늘 데이터 가공 때문에 100개정도 되는 폴더를 하나에 병합해야만 했다 해당 파일은 최소 수만에서 최대 20만개의 데이터가 한 row 에 하나씩 있었다. 100개의 파일을 총 100개의 열을 가진 하나의 엑셀파일로 만들어야 했다... 일일히 노가다는 저어어어어어어얼대 하고 싶지 않았다. 뭐..컴터한테 시켜야지 어처피 엑셀을 이용하는 과정은 빈번하게 발생하고 업무 자동화에도 나중에는 눈을 돌려야 할 필요성을 느끼는 찰나에 마침 잘됬다 싶어 모듈을 검색하였다^^ㅎㅎ 파이썬으로 # -*- coding: utf-8 -*- import os from openpyxl import Workbook openpyxl 이라는 모듈인데 pip install openyxl 을 하면 깔리게 되어있다 엑셀파일에 관련된 모듈인데..