본문 바로가기

수학117

[자바] 백준 25991 - Lots of Liquid (java) 문제 : boj25991 필요 알고리즘 개념 수학 수학문제이다! ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 n개의 정육면체의 한 면의 길이 c가 주어진다. 이 때 해당 정육면체에 담긴 액체의 부피는 c^3이 된다. 이걸 전부 다 더하면 n개의 정육면체에 담긴 액체의 총 부피를 알 수 있다. 이 값의 세제곱근을 구하면 구하고자 하는 컨테이너의 한 면의 길이를 구할 수 있다. 코드 : github import java.io... 2022. 11. 25.
[자바] 백준 1990 - 소수인팰린드롬 (java) 문제 : boj1990 필요 알고리즘 개념 소수 판정, 에라토스테네스의 체 팰린드롬도 판정해야하지만, 그보다 먼저 소수 판정을 할 수 있어야 한다. 에라토스테네스의 체를 알고 있어야 1억 이하의 소수를 효율적으로 구할 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 1. b 이하의 소수를 모두 구한다. 에라토스테네스의 체를 사용해 구해주면 된다. 이 때 sqrt(b) 까지만 확인해주면 된다. (에라토스테네스의 체 혹.. 2022. 11. 10.
[자바] 백준 13985 - Equality (java) 문제 : boj13985 필요 알고리즘 개념 문자열 파싱 문자열 파싱 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 A + B = C 형태의 입력에서, A, B, C를 뽑아낼 수 있다면 풀 수 있다. 심지어 1개의 문자로만 각 숫자가 주어진다고 했으므로 어려울게 없다. character 자체로 판단해도 되고, 어차피 공백으로 구분되어 있으므로 공백을 기준으로 잘라줘도 된다. 코드 : github import jav.. 2022. 11. 7.
[자바] 백준 1669 - 멍멍이 쓰다듬기 (java) 문제 : boj1669 필요 알고리즘 개념 수학 수학적 사고가 필요한 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 얼핏 어떻게 구해야할지 난감할 수 있다. 구해야하는건 '최소'의 일수라는걸 시작으로 생각해보면 좀 더 쉽게 생각해볼 수 있다. 첫째 날과 마지막 날은 항상 1cm 여야 한다. 그렇다면 가장 빠르게 cm를 증가시키면서 차이를 좁혀야 '최소'일수가 가능하다. 가장 빠르게 cm를 증가시키는 방법은, 중간 .. 2022. 11. 2.
[자바] 백준 7891 - Can you add this? (java) 문제 : boj7891 필요 알고리즘 개념 구현, 수학 수학문제라곤 하지만 덧셈만 하면 된다 ㅋㅋ 그냥 구현문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 사실상 입출력 연습 문제이다. 각 줄에 입력된 두 수를 더한 후 출력해주면 된다. 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringT.. 2022. 11. 2.
[자바] 백준 10822 - 더하기 (java) 문제 : boj10822 필요 알고리즘 개념 문자열, 파싱, 구현 문자열을 일정한 규칙대로 파싱해서 원하는 데이터를 얻을 수 있다면 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 "10,20,30,50,100" 형태로 ','를 기준으로 작성되어있는 각 숫자들을 파싱해서 뽑아낼 수 있으면 모두 더해버리면 된다. 자바의 경우 String에 대해 split 함수로 파싱해도 되고, StringTokenizer로 파싱해.. 2022. 10. 28.
[자바] 백준 5717 - 상근이의 친구들 (java) 문제 : boj5717 필요 알고리즘 개념 사칙연산, 수학 덧셈만 하면 되므로 그냥 입출력 연습 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 '0 0'이 입력될 때 까지 두 수를 입력받아 더한 후 출력해주면 된다. 입출력 연습문제로, 아래의 코드 및 위의 '자바로 백준 풀 때의 팁 및 주의점' 링크를 참고해보자. 코드 : github import java.io.BufferedReader; import java.i.. 2022. 10. 25.
[자바] 백준 22864 - 피로도 (java) 문제 : boj22864 필요 알고리즘 개념 그리디 알고리즘 논리적으로 최선의 경우를 만드는 규칙을 정해 모든 경우에 적용시켜서 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 뭔가 곱셈, 나눗셈으로 풀 수 있을 것 처럼 생겼는데, 단 한번이라도 M을 넘기면 안되는걸 판단하기가 많이 어려울 것 같다. 24시간만 판단하면 되므로 총 24번 매번 확인하면 된다. 확인 방식은 간단한데, 매번 A만큼 피로도가 쌓여도 M.. 2022. 10. 25.
[자바] 백준 10178 - 할로윈의 사탕 (java) 문제 : boj10178 필요 알고리즘 개념 수학, 사칙연산 간단한 나머지 몫, 나머지 수학 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 각 테스트케이스별로 c와 v를 입력받아서, c를 v로 나눈 몫과 나머지를 출력해주면 된다. 즉, "You get [c/v] piece(s) and your dad gets [c%v] piece(s)." 를 출력해주면 된다. 입출력 문제로 생각하는게 좋을 것 같다. 코드 : gi.. 2022. 10. 25.
[자바] 백준 16395 - 파스칼의 삼각형 (java) 문제 : boj16395 필요 알고리즘 개념 다이나믹 프로그래밍 (DP, 동적계획법) 파스칼의 삼각형을 한쪽으로 전부 밀어보면 규칙이 보인다. DP로 미리 값을 구한 후, n과 k에 따라 해당하는 값을 출력해주면 된다. DP 문제긴한데 DP라기보다는 그냥 규칙찾는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 문제에서 제시된 파스칼 삼각형을 코드로 어떻게 표현할지 생각해보자. 파스칼 삼각형을 좌측으로 쭉 밀어서 2.. 2022. 10. 25.