목록전체 글 (431)
mojo's Blog

안드로이드는 화면에 선, 원, 사각형 드으이 도형을 그리는 방식을 제공한다. 관련 메소드에서 좌표를 직접 입력해서 그릴 수도 있고, 화면을 손가락으로 터치해서 그릴 수도 있다. 그리고 그래픽을 처리하는 방식을 잘 활용하면 그림판 같은 유용한 앱을 만들 수 있다. 그래픽 처리의 기본 그래픽을 출력할 때는 주로 View.onDraw() 메소드를 오버라이딩해서 사용한다. 그래픽 처리를 위한 기본적인 방식을 알아보도록 한다. Java Code public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);..

문제 링크 => https://www.acmicpc.net/problem/15683 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감 www.acmicpc.net 삼성 역량 테스트 문제로 시뮬레이션 문제이다. 감시 케이스는 총 5가지로 다음과 같다. (1) 한 쪽 방향으로 상하좌우 총 4번 감독할 수 있는 경우 (2) 두 쪽 방향으로 상하 or 좌우 방향으로 2번을 감독할 수 있는 경우 (3) 두 쪽 방향으로 감시하는 방향이 직각인 방향으로 총 4번 감독할 수 있는 경우 (4) 세 쪽 방향으로 총 4번 감독할 수 있는 경우 (5)..

6번 ) 일기장을 내장 메모리가 아닌 SD 카드의 myDiary 폴더에 저장되도록 구현하기 XML Code Java Code public class MainActivity extends AppCompatActivity { DatePicker dp; EditText edit; Button btn; String fileName; File[] fileNames; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setTitle("연습하기"); ActivityCompat.requestPermissions(this, ..

앱을 종료했다가 다음에 다시 실행할 때 사용했던 곳부터 이어서 작업하고 싶은 경우가 있다. 이럴 때 내장 메모리에 파일을 저장하고 읽어오는 방식이 쓰인다. 내장 메모리의 저장 위치는 /data/data/패키지명/files 폴더이다. 파일을 읽기 위해 먼저 안드로이드 Context 클래스의 openFileInput() 메소드를 사용하는데, 이 메소드는 FileInputStream 을 반환한다. 파일을 쓰기 위해서 openFileOutput() 메소드를 사용하면 FileOutputStream 을 반환한다. Java에서 제공하는 파일을 읽고 쓰는 java.io.FileInputStream 클래스와 java.io.FileOutputStream 의 read(), write() 메소드를 사용하여 파일을 처리한다. ..

문제 링크 => https://codeforces.com/contest/1561/problem/C Problem - C - Codeforces codeforces.com Problem tags => binary search, greedy, sortings 임의의 동굴에 들어갈 때 맨 앞의 몬스터부터 차례대로 무찔러가면서 1씩 레벨을 업할 수 있다. 이때, 몬스터를 무찌르는 과정에서 Hero는 몬스터보다 적어도 레벨이 1 높아야 한다. (이부분이 핵심) 즉, 임의의 동굴에 몬스터가 다음과 같이 배치 되었다고 가정하자. Hero (?) ) 5 , 10 , 8 , 12 , 15 , 11 , 16 이때 Hero가 해당 동굴에서 최소 어느 레벨이 되어야 모든 몬스터를 무찌를 수 있는지를 차례대로 확인하도록 한다...

문제 링크 => https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net 삼성 역량 테스트 문제로 시뮬레이션 문제이다. 톱니바퀴 4개를 2차원 배열 Wheel[4][8] 으로 설정하고 접근하였다. ( i 번의 x번 톱니바퀴 => Wheel[i - 1][x - 1] ) 일단 빠르게 구현할 수 있는 것으로 회전에 대한 부분이다. 시계 방향일 경우 1 => 2, 2 => 3, ... , 8 => 1 이런식으로 이동할 것이므로 다음과 같은 코드가 된다. ..