전체 글 62

프로그래머스 코딩테스트 문제: 폰켓몬

일단 문제 이름이 너무 귀엽다! 폰켓몬! 프로그래머스 코딩테스트 level1에 해당하는 문제이다. 지난 글에서 푼 문제를 풀면서 순수 배열로만 구현하는데 너무 얽매여 있었나보다. 문제를 보자마자 배열로만 풀어야겠다는 생각밖에 하지 못했다ㅜㅜㅜㅜ 다른 사람들의 답을 보자마자 아차싶었다. hash, ArrayList로 구현한 답들이 대부분을 차지했다. 어쩐지...코드를 쓰면서 이게 맞나 싶었지만... 꾸역꾸역 순수 배열로 구현해버렸...ㄷ..ㅏ.... 코드에서 냄새가 난다.... 부끄러운 코드다... 한가지에 너무 몰입하지말고 여러가지 경우의 수를 생각해보고 코딩을 시작하자. public int solution(int[] nums) { int answer = 1; int max=nums.length/2; b..

프로그래머스 코딩테스트 문제: 제일 작은 수 제거하기

프로그래머스 코딩테스트중 level1에 해당하는 문제이다. level1이고 딱보기에 쉬워보여 막 들이댔다가 큰코다쳤다.... 문제를 잘못파악해서 정렬된 상태로 풀뻔했기 때문...! 익숙한 ArrayList로 풀고싶었지만 단순 배열을 사용하고 순수 코딩만을 이용하는 것이 좋을 것 같아 최대한 배열과 코딩으로만 풀고자 했다. 배열만으로 코딩을 하는 것이 너무 오랜만이라 좀 헷갈렸다. class Solution { public int[] solution(int[] arr) { int[] answer = {}; if(arr.length==1) { answer=new int[1]; answer[0]=-1; return answer; } int min=arr[0]; for(int i=0;i

프로그래머스 코딩테스트 문제: 주식가격

level2 주식가격 문제를 풀어보았다. 스택/큐 에 대한 문제를 풀면서 느끼는 것인데, 스택/큐에 대한 문제는 문제를 완벽히 이해하고 식만 세우면 구현하는 것은 크게 어렵지는 않은 것 같다! 결론을 먼저 보자면 나의 코드는 이러하다. class Solution { public int[] solution(int[] prices) { int[] answer = new int[prices.length]; for(int i=0;i

Mac port 설치

mac을 사용하면 terminal을 많이 사용하게된다. window의 cmd나 linux의 terminal보다 더 복잡한것같다...(느낌이..) 아직 맥정복까지는 먼 얘기인 것 같다. MacPorts는 macOS와 다윈 운영 체제의 소프트웨어 설치를 단순화시켜 주는 패키지 관리자이다. 쉽게말해 mac terminal에서 쉽게 소프트웨어를 다운받을 수 있게 해주는 관리자이다. macport는 기본적인 mac에는 설치되어있지 않기 때문에 따로 설치가 필요하다. macport설치전에 xcode설치가 필요하다. xconde는 appstore에서 검색하면 설치가능하다. 단순히 설치만 하면 끝나는 것은 아니고 한번 xcode를 실행하여 동의를 해주어야 한다....! 다음은 아래 사이트에서 macport를 다운받아준..

mac 2020.02.25

프로그래머스 코딩테스트 문제: 탑

https://programmers.co.kr/learn/courses/30/lessons/42588 위의 링크 문제를 풀었다. 내코드--------------------------------------------------- 탑의 신호가 오른쪽에서 왼쪽으로 수신보낸다는 것이 관점이었던 것 같다. 스택으로 푸는 문제였다고 하나 아직 처음이라 그냥 Arraylist를 이용하는 것이 훨씬 편하다...안드로이드 개발을 할때 ArrayList를 참 많이 쓰는데 이게 습관이 된 것 같다. 이후에 순수배열로 다시 풀어보았다. class Solution { public int[] solution(int[] heights) { int[] answer = new int[heights.length]; answer[0]=0..

png or jpeg -> tif -> box 변환하기

jTessBoxEditor를 사용하면서 png -> tif -> box 으로 변환하는 과정이 필요했다. 물론 확장자명을 바꾼다고 해결되지 않는다. jTessBoxEditor에서 필요한 tif파일 이름이 정해져있다. ..exp0.tif 의 형식을 맞춰야한다. 예를 들어 나는 이렇게 만들었다. eng.lucidagrande.exp0.tif 이름 형식이 있다는 점을 유의하며 png, jpeg를 tif으로 바꾸자.( 다른형식의 이미지 포맷도 적용되는지는 자세히 모르겠다) terminal에서 command를 이용하자 convert (바꾸려는 사진) -resize (원하는 비율로 설정%) -type (원하는 타입 설정) eng.lucidagrande.exp.tif (형식을 지키는 변환될 파일이름) 이때 resize..

JTessBoxEditor로 이미지 인식하기

tesseract은 OCR엔진이다. OCR이란 광학문자인식으로서 사람이 쓴 글씨나 기계로 인쇄한 문자를 인식하는 기술이다. 나는 영어 손글씨인식이 필요하여 tesseract를 이용하기 시작했다. 하지만 내 예상보다 결과가 너무 별로였다. 컴퓨터에서 작성한 파일은 정말 잘 인식을 했지만 그것을 출력한 인쇄물을 다시 사진으로 찍어 인식시키면 그것부터가 인식률이 매우 낮아지는 것을 알 수 있다. 손글씨 인식에 적합한지는 잘 모르겠다. 하지만 인식률이 낮아서 불만족스럽다면 학습을 시키면 된다는 글들을 보고 일단 시도해보기로 했다. tesseract를 학습시키기 위해 사용한 도구로서 jTessBoxEditor를 이용했다. jTessBoxEidtor는 box파일의 편집을 돕는 도구이다. 비슷한 도구로서 CowBox..

Mac에서 jTessBoxEditor 프로그램 실행하기

tesseract를 사용하여 손글씨 텍스트를 인식하고자 했다. 하지만 tesseract로 손글씨까지 인식하기에는 무리가 있다는 것을 알게되었다.... 그래서 학습을 시켜 손글씨를 잘 인식하도록 시도하고 있다. 영어 손글씨를 위한 data set을 만들기 위해 jtessBoxEditor를 이용하려고 했다. 이 프로그램을 사용하려면 java설치를 해야한다. https://www.java.com/ko/download/ 무료 Java 소프트웨어 다운로드 모든 Java 다운로드 다른 컴퓨터 또는 운영 체제용 Java를 다운로드하려면 아래 링크를 누르십시오. 모든 Java 다운로드 문제 보고 Java 응용 프로그램이 포함된 페이지를 방문할 경우 항상 이 페이지로 재지정되는 이유는 무엇입니까? » 추가 정보 www...