알고리즘/백준 문제
-
백준3052 배열-나머지알고리즘/백준 문제 2019. 8. 19. 02:32
중복되는 숫자를 어떻게 확인할지 혼자 이런저런 방법으로 해보다가 답을 못찾았다. 그래서 풀이를 찾아보고 이해한뒤 다시 풀어보았다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedReader(new InputStr..
-
백준2577 배열- 숫자의 개수알고리즘/백준 문제 2019. 8. 19. 00:33
문제를 보고 0~9를 배열에 넣어주고 곱해진 숫자의 각 자리수를 배열 인덱스 하나하나 비교한뒤 또 다른 배열을 하나 만들어서 각 수자의 개수를 저장하면 되겠다고 생각은 했다. 고민한것은 어떻게 곱해진 수의 각 자리수를 분리할것인가 였는데 10으로 나누고 나머지를 이용하여 쉽게 해결했다. 나머지수를 비교한뒤, total 값을 10으로 나누고, 나누어진 값을 다시 %10 하여 비교해주면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRea..
-
백준 15552 문제 (BufferedReader , 문자열분리, int-String 형변환)알고리즘/백준 문제 2019. 8. 15. 23:04
데이터를 불러올때 하드디스크등 물리적인 접촉이 많을수록 성능이 저하된다. 하지만 메모리에 생성되는 Buffer라는 임시기억장소를 이용하면 데이터를 불러올때마다 물리적인 접촉을 하지 않아도 된다. 하드디스크에 최초로 들렀을때 어느정도 크기의 데이터를 한번에 불러와서 이후에는 메모리에만 접속하면 되어 처리속도가 빨라진다고 한다. Scanner의 경우 버퍼의 크기가 1024 chars, BufferedReader는 8192 chars 이기때문에 많은 입력이 있을 경우 BufferedReader를 사용하는 것이 좋다고 한다. 그리고 속도에서도 차이가 많이 난다. 이유는 잘 모르지만 Scanner함수가 내부적인 문제라고 하는거같다. (속도차이 참고 http://blog.naver.com/PostView.nhn?b..
-
백준 2588 문제알고리즘/백준 문제 2019. 8. 15. 02:21
나는 이 문제를 해결하기 위해서 a와 b의 1의자리 수, 10의 자리 수, 100의 자리 수를 각각 변수로 미리 만들어서 우리가 곱셈을 할때 공책에 적어서 a의 1의 자리수x b의 1의자리수 + a의 10의 자리수 xb의 1의 자리수... 를 반복해주었다. 이때 각각의 자리수를 만들어줄 방법이 딱히 떠오르지 않아서, 1의 자리수를 만들땐 1. 입력받은 수를 10으로 나누어서 1의 자리수를 버린뒤 2. 다시 10을 곱한다. (ex. 123 -> 12-> 120) 그러면 1의 자리수가 버려진다. 3. 입력받은 수(123) 에서 위의 값(120)을 뺀다. 4. 그러면 1의 자리수가 만들어진다. 이와 비슷한 방법으로 100의 자리수까지 만들어 미리 변수에 저장해주었더니 문자를 계속 집어넣어 계산하는 것 보다는 ..
-
백준 1712 문제 해결알고리즘/백준 문제 2019. 7. 16. 07:11
이런 문제이고, 내가 아무리 수학을 모른다지만 대충 보고도 풀만한 쉬운 문제같았다... 그런데.... 자꾸 답이 틀리다는 것이다..... 찾아보니 총 수익과 지출을 계산하는 과정에서 오버플로우가 생길수 있다는 나의 결론이 나와서 아는건 없고 코드는 점점길어지고 저런 쌩쇼를 하는 지경까지 이르렀는데... 도저히 모르겠어서 좀 검색을 해보니ㅋㅋ.. 좀 더 수학에 관한? 문제였다. 막 그런 수학은 아니고.. 변수들을 간단하게 만들어야 하는? (약분은 아니고 이걸 뭐라고 하는지 까먹었다.) 고정비용을 a, 가변비용을 b, 판매가격을 c, 판매된 노트북의 수를 x로 놓자. 이 문제는 총판매액>총비용 이 되는 지점에서 x가 몇이냐를 찾는 문제이다. =====> c*x > a+(b*x) 이고, 이는 (c-b)x > ..