전체 글(168)
-
dynamic programming 3
* 틀린 내용이 있을 시 지적 부탁드립니다. 문제는 더블릿 21 dynamic programming에 있는 land입니다.문제 사이트 주소입니다.http://183.106.113.109/30stair/land/land.php?pname=land 이전에 풀었던 다차원 배열 1 문제 fishing보다 진화된 문제입니다. 물론 그때처럼 풀면 안됩니다. dp 문제인 만큼 어떻게든 반복된 연산을 줄이고 이전에 계산한 값을 이용할 수 있어야 합니다.조금 다른 점은 네모칸 안의 숫자의 합이 아니라 범위의 크기이고 각 칸의 최소최대차의 제한이 있습니다. 여기선 대표적으로 2개의 배열을 쓰겠습니다. 하나(A)는 해당 열에서 어느정도의 한계치가 주어졌을 때 포함할 수 있는 높이를 저장합니다. 다른 하나(B)는 해당 열의 ..
2014.10.20 -
안드로이드 해킹대회 어플 문제 1
* 틀린 내용이 있을 시 지적 부탁드립니다. http://codeengn.com/challenges/smartapp/01이걸 풀어보겠습니다. 파일을 다운받아 설치하려고하면 설치가 안됩니다. dex2jar로 jar를 만들어 jd-gui로 소스를 보려고했으나 jd-gui가 jar를 열지 못합니다.apk를 zip파일로 바꾸어 압축을 풀어줍니다. 이름이 비정상적인 파일이 3가지 있습니다. AndroidManlfests.xml class.dex resource.arsc또한 어플리케이션을 서명한 후 생기는 META-INF 폴더가 없습니다. 파일명들을 수정하고 서명을 해줍니다.서명을 하기위해서 signapk.jar를 이용할건데 개인 키로 서명된 인증서가 필요합니다. openssl을 이용하여 인증서를 생성하기위해 우분..
2014.10.14 -
다차원배열 1
* 틀린 내용이 있을 시 지적 부탁드립니다. 문제는 더블릿 7 다차원배열에 있는 fishing입니다.문제 사이트 주소입니다.http://183.106.113.109/30stair/fishing/fishing.php?pname=fishing 5 X 5 범위가 주어졌을 때 직사각형 범위의 합이 가장 큰 영역을 구하는 문제입니다. 간단히 시작지점과 끝지점이 모든 영역을 돌면서 그 사이의 합을 구하도록 하였습니다. 6중 for문을 사용하였습니다. 영역이 커지면 시간초과도 날 것 같지만 이 문제에 대해서는 accept를 받았으니 다음 문제로 넘어가겠습니다.
2014.10.13 -
tree 1
* 틀린 내용이 있을 시 지적 부탁드립니다. 문제는 더블릿 15 tree에 있는 bridging입니다.문제 사이트 주소입니다.http://183.106.113.109/30stair/bridging/bridging.php?pname=bridging 1부터 순서대로 반대편단자와 연결시키고 교차하지 않고 연결이 가장 많이 되었을 때 단자의 수를 구하는 문제입니다. 각각의 단자와의 연결에 대한 입력이 있을 때마다 그 전까지의 경우 중 가장 연결이 많이 되었을 때의 값을 갖고 있어야 합니다.각 단자를 단말노드로 구성한 이진트리를 구성합니다.2의 배수 중 단말노드의 수를 넘는 최소값이 전체 단말노드의 수가 됩니다. 에제 문제 6 4 2 6 3 1 5를 예로 보겠습니다.root 노드의 인덱스를 1로 보았을 때 단말 ..
2014.10.12 -
안드로이드 진단 도구
* 틀린 내용이 있을 시 지적 부탁드립니다. 안드로이드 진단에 유용한 도구를 잠깐 살펴보겠습니다. 1. Drozer 프레임워크Drozer는 안드로이드 디바이스 시스템에 접근해 어플을 점검할 수 있는 모바일 진단 프레임워크입니다. https://www.mwrinfosecurity.com/products/drozer/community-edition/window installer를 받아 setup파일로 윈도우pc에 설치해주고 apk파일은 폰에 설치합니다.adb를 이용해 port를 맞춰줍니다. pc의 tcp 상태를 보면 drozer는 31415 포트에서 실해오디고 있습니다.adb forward tcp:31415 tcp:31415drozer실행은 다음 명령어로 합니다.drozer.bat console connec..
2014.10.05 -
dynamic programming 2
* 틀린 내용이 있을 시 지적 부탁드립니다. 문제는 더블릿 21 dynamic programming에 있는 playoff입니다.문제 사이트 주소입니다.http://183.106.113.109/30stair/playoff/playoff.php?pname=playoff 문제는 이렇습니다.게임을 총 N판을 합니다.그런데 A선수와 B선수가 N판을 다 하기 전에 게임이 끝납니다.그랬을 경우 각 선수가 상금을 가져갈 확률을 구하면 됩니다. 예제에 나온 입력 4, 1, 0인 경우총 4판에 A가 한판 이긴 상태입니다.이후 A가 나머지 게임을 이길 확률을 보면A가 이겼을 때 : OB가 이겼을 때 : X1판 2판 3판 4판 5판 6판 7판 8판O O O O X O O O O X O O O O X O X X O O O.....
2014.10.02