목록알고리즘 (192)
곽로그
문제 www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net check 1. String과 StringBuilder - 처음에는 String을 사용해서 구현을 했는데 시간초과가 났다. 시간복잡도를 계산했을 때, 모든 문자열이 스택에 push 되었다가 pop되니까 O(2N)이라고 생각했다. 그래서 시간초과가 나는게 의아했다. - String을 사용했을때에 문제는 String을 이용한 연산때문에 시간초과가 난다는 거다. String에대한..
문제 www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net check 1. 배열을 이용한 풀이에서 시간 초과가 나는이유 - 배열을 이용하게 되면 수정과 삭제를 할때 배열의 최악의 경우 길이만큼의 시간이 필요하다. (맨 앞요소를 삭제하는 경우, 인덱스 1부터 N-1까지를 0부터 N-2 까지 옮겨야 한다) - 문제의 최대 입력(N)은 100,000 이고 수행 명령(M)은 최대 500,000이다. - 따라서 시간 복잡도는 NM = 50,000,000,000 500억인데 ..
문제 www.acmicpc.net/problem/10820 10820번: 문자열 분석 문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있 www.acmicpc.net check 1. 입력의 끝 - (line =br.readLine())!=null 이면 입력의 끝이고, 따라서 종료가 되어야 한다고 생각했는데, 콘솔창에서는 계속 입력을 받았다. 구글링을 해보니 아래와 같은 stackoverflow를 찾았다. stackoverflow.com/questions/14581205/bufferedreader-readline-waits-for-input-from-console B..
문제 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이 www.acmicpc.net check 1. 문제이해를 잘 못했다. ABCD에 대응하는 숫자가 차례로 주어지는 줄 알았다. 즉 1 1 1 1 이라도 A B C D로 주어지는 걸로 생각 → 테스트 케이스를 잘 볼것 2. A의 아스키코드를 이용하면 꽤나 쉽게 풀 수 있다 3. Sting num = 10 이면 num.charAt(0)에 10 이 있는 걸로 생각. 코드 package october.fifthWeek; import java.io.BufferedReader; impor..
문제 www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.*; public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputS..
* 해당 포스팅은 구버전 * alwaysbemoon.tistory.com/228 [백준 19236, Java] 청소년 상어 문제 www.acmicpc.net/problem/19236 19236번: 청소년 상어 첫째 줄부터 4개의 줄에 각 칸의 들어있는 물고기의 정보가 1번 행부터 순서대로 주어진다. 물고기의 정보는 두 정수 ai, bi로 이루어져 있고, ai는 alwaysbemoon.tistory.com 1. 아ㅏㅏ아아아 객체객체객체객체 .... 어렵다 객체 1) 객체를 매개변수로 넘길때는 반드시 복사 2) 객체 값을 변경시키고서 매개변수로 넘기면 다시 돌아왔을 때 초기값으로 함수수행하지 않고 변경된 값으로 수행 (이거때문에 하루 날림 ㅜㅜ) - currentShark.x 를 변경하면 안됨 for(int..
1. 보완해야하는 것 1부터 N까지 M 개를 뽑는데, 중복허용, 중복없이, 오름차순, 내림차순!! 2. 이번주 역테가 이 정도 수준이였으면 좋겠다. ㅜㅜ import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.Arrays; import java.util.StringTokenizer; class Point{ int x; int y; int distance; Point(int x, int y){ this.x =x; this.y =y; distance =..
1. 실수한 것 - mx=N 2. 처음 접근을 잘 못한 것 주사위를 굴릴 때 변하는 것, 변하지 않는 것 - 전개도를 돌림 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.Arrays; import java.util.StringTokenizer; class Dice{ int x; int y; int[] diceValue; public static int UP =0; public static int BACK =1; public static int RIGHT = 2; public static i..