목록Algorithm (77)
Development Palette

문제를 풀 때마다 테스트 케이스는 맞는데 IndexOutOfBounds 같은 런타임에러에 걸리거나 틀렸습니다가 나온 경우가 많다.. 문제를 잘 읽고 범위와 조건을 잘 보는 연습을 하자... 범위가 1

1로 표기한 네모를 찾을 때 (직사각형이 있는 곳) 시작과 끝점을 최소값부터 최대값으로 돌렸을 때와 그냥 0부터 99까지 돌렸을때 시간은 같다. 빈 공간이 크지 않기 때문에 그냥 0~99까지 돌려도 되나보다 1. 0~99까지 그냥 돌려서 찾기 package com.testex.t0830_IM.b2669_직사각형네개의합집합의면적구하기; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; //min,max 안했을 때 //오른쪽으로 돌리면 x -> 행, y-> 열 public class Main2 { public static void m..

자르는 행과 열을 모두 저장한 후 정렬하고 행과 열의 최대 길이를 찾는 방법을 이용 package com.testex.t0830_IM.b2628_종이자르기; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new In..

dr, dc로 돌리기 하는게 익숙치 않았는데 이번 기회에 많은 틀림과 시간초과로 친해진것 같다.. 알게 된 것 1. 처음에 시작하는애를 생각해서 -1을 해주고 돌리기 시작 이 문제에서는 처음방향이 아래로 먼저 가기 때문에 행좌표의 초기값을 -1로 시작하고 돌리면 된다. 2. 원하는 값을 찾았을 때 nr, nc를 반환하는게 아니라 현재 n, c 값을 반환하도록 하기 nr,nc를 출력하는 방식으로 했을 때 테스트케이스도 잘 나오고 별 문제가 없다고 생각했는데 K가 1일 때는 안된다. 현재 값으로 접근하자! 3. 방향을 바꿀 때 반복문 사용이 아닌 나머지 연산을 사용할 수 있다. d = (d+1) % 4; package com.testex.t0830_IM.b10157_자리배정; import java.io.*;..

ArrayList list.add((index, value) 형태로 ArrayList는 원하는 인덱스에 값을 넣을 수 있다. 이미 그 index에 값이 존재한다면 기존 값을 뒤로 보내고 add 하여 끼워 넣을 수 있다. 줄세우기 문제는 학생들이 다른 학생의 번호표에 따라 뒤로 밀려나기 때문에 ArrayList를 사용했음 package com.testex.t0830_IM.b2605_줄세우기; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class Main { pub..

JUNGOL www.jungol.co.kr package com.testex.t0830_IM.w0817.j1037_오류교정; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { //행렬의 각각의 열과 각각의 행이 짝수 합을 가질 때 패리티 성질을 가지고 있다고 하자. // 다시 말하자면 한 집합에 짝수개의 1이 있다는 이야기 이다. BufferedReader br = new BufferedR..

2477번: 참외밭 첫 번째 줄에 1m2의 넓이에 자라는 참외의 개수를 나타내는 양의 정수 K (1 ≤ K ≤ 20)가 주어진다. 참외밭을 나타내는 육각형의 임의의 한 꼭짓점에서 출발하여 반시계방향으로 둘레를 돌면서 지 www.acmicpc.net package com.testex.t0830_IM.w0817.n2477_참외밭; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; class Pair { int dir; int dis; public Pair(int dir, int dis..

10163번: 색종이 평면에 색깔이 서로 다른 직사각형 모양의 색종이 N장이 하나씩 차례로 놓여진다. 이때 색종이가 비스듬하게 놓이는 경우는 없다. 즉, 모든 색종이의 변은 서로 평행하거나, 서로 수직이거나 둘 www.acmicpc.net 배열이 좌우, 상하 둘 다 거꾸로 되어있지만 색종이 면적만 구하기 때문에 거꾸로는 신경쓰지 않아도 된다. 뒤집어서 생각하면 똑같다 package com.personal.w0824.n10163_색종이; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { publi..