일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 14645번
- 8393번
- 11942번
- VeraandOutfits
- 자바
- 9654번
- 8370번
- 10170번
- Java
- 5522번
- 5338번
- 10699번
- 14652번
- 10757번
- 6749번
- 5339번
- 15439번
- 11382번
- 5337번
- 구름알고리즘먼데이챌린지
- 설명하기힘든문제
- 11283번
- 2420번
- 5554번
- next()과 nextLine()차이
- 9653번
- 백준
- 10926번
- 알고리즘먼데이챌린지
- 13277번
- Today
- Total
lazylazylazylazylazylazylazylazy
prologue&백준[JAVA] 1271번 엄청난 부자2 본문
prologue&백준[JAVA] 1271번 엄청난 부자2
lazylazylazylazylazylazylazylazy 2021. 2. 7. 23:28prologue
- 군대에 있으면서 미래를위해 공부하는데 내가 하는 공부가 프로그래밍
즉 요새 핫하다는 코딩이다 코딩을하면 자연스레 구글의 도움을 많이 받아 구글링은 숨쉬듯이 하게되는데
그때마다 늘 사막의 오아시스같은 정보에 감사함을 느낀다 나도 그 감사함을 돌려주고싶고
내가하는 이 모든 과정을 기록해두고싶어서 이 시리즈를 시작할려한다...
시리즈에대해 설명하면
백준과 연동되는
->브론즈5단계부터 문제 하나하나 풀어나갈려한다
많이 부족하고 이리저리 치이겠지만 여러분에게 조금이라도 도움되면 그걸로 만족합니다 ㅎㅎㅎㅎ
System.out.print("Break BOJBronzeV");
1271번
https://www.acmicpc.net/problem/1271
BronzeV에 있는 63개문제중 3번째문제이다
첨에 문제보고 아무렇지않게 20초만에 풀고 제출했는데 런타임에러오류(Inputmismatch)나서 당황을했고
그 후 오답률을보고나서 이해했다..
처음에 뭣도모르고 제출한 답안인데 많은 부족함이 느껴진다...
오류가 난걸보고 생각을 해봤다.. 최댓값이 10의 10000제곱이면 어마어마한데.. int로 될까?
int 메모리의 크기는 4byte로 범위는 '-2,147,483,648~2,147,483,647'이다
그럼 그 다음으로 쉽게 생각할 수 있는게 int보다 큰 long인데
long 메모리의 크기마저 8byte로 범위는 '-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807'이다
무언가 더 확실히 큰게 필요했다 !!
그것은..'BigInteger'인데 java.math 패키지에 포함돼있는 클래스다
선언은 아래와 같이하며
만약 BigInteger를 이용하여 Bignumber1와 Bignumber2를 선언해줬다면 기본 사칙연산메소드를 이용할 수 있다.
덧셈 | Bignumber1.add(Bignumber2) |
뺄셈 | Bignumber1.subtract(Bignumber2) |
곱셈 | Bignumber1.multiply(Bignumber2) |
나눗셈 | Bignumber1.divide(Bignumber2) |
나머지 | Bignumber1.remainder(Bignumber2) |
문제를위한 개념은 이정도인거같고 다시 문제로 넘어가보자(더 알고싶으면 구글에 Biginteger 클래스 검색해보세요!!!)
나는 문제의 n과m을 받기위해 scanner를 이용해서 선언을 했다
이러면 입력받은 정수가 BigInteger로 받는다!!!! 참 신기하지않나요??!?!?!??
그래서 세상에서 제일 기분좋은 문구 '맞았습니다'를 내게 보여준 코드는 아래와같다
- 문제풀고 새로운거 알면 그저 아~그렇구나하며 넘어갔는데 이렇게 생판모르는 사이버세상사람들에게 설명하며
꼼꼼히 따져보니 정말 힘들다.. 사실 아는것도 많지않아 글이 많이 빈약하다
내가 추구하고싶은건 문제를 하나하나 풀어가며 새로운 개념?이론?을 깊게 설명하기보다는
개념, 이론을 문제에서 쓰이는정도만 간단히 설명하고 날 찾아준 사이버세상사람들에게 많은 문제풀이를 보여주고싶다
구글링하면서 절망감을 느꼈을땐 내가 모르는 개념을 마주했을때보다는 내가 모르는 문제를 구글링했을때
그 문제풀이가 안나왔을때다!! 정말 이때는 답답하다
혹여나 있더라도 내가 사용하는 언어가아닌 다른 언어로된 풀이가 나올때는 조금은 찝찝하고 아쉽다..
앞으로 브론즈파이브단계부터 내가 최대한 닿을수 있는 문제
풀고, 사이버프렌즈에게 알려주고싶다 ㅎㅎㅎ 글이 많이 빈약하지만 읽어주셔서 감사합니다!
'프로그래밍 > Break BOJ byJAVA' 카테고리의 다른 글
백준[JAVA] 3046번 R2 (0) | 2021.02.14 |
---|---|
백준[JAVA] 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2021.02.14 |
백준[JAVA] 2475번 검증수 (0) | 2021.02.10 |
백준[JAVA] 2338번 긴자리 계산 (0) | 2021.02.10 |
백준[JAVA] 1550번 16진수 (0) | 2021.02.08 |