본문 바로가기

Java30

[백준/Java] 2745 진법 변환, 11005 진법 변환2 (8단계 일반수학, 진법변환 개념과 방법들) 2745, 11005의 진법변화 문제 두 문제를 풀어보았다.문제 풀기에 앞서 진법이 무엇인지! 알아보자진법이란?수를 셀 때 자릿수가 올라가는 단위를 기준으로 하는 셈법*숫자를 시각적으로 나타내는 ‘기수법’의 일종으로, ‘위치기수법’이라고도 한다. 이렇게 말하면 이해가 잘 안갈것이다. 우리에게 익숙한 2진법, 8진법등을 예로 들어보자면2진법 : 0과 1로만 구성8진법 : 0~7까지의 숫자로 구성16진법 : 0~16까지의 숫자로 구성( 그런데 10부터는 표현이 안되므로 ABCD..를 사용 )즉, 한 자리에 최대 숫자가 몇개가 오는지!를 나타내는거라고 볼 수 있겠다.( 16진법은 한 자리에 0부터 15까지 오는것이라 볼 수 있겠다. 롸잇?)진법 변환1. 10진수 → 다른 진법(N)으로: N진법의 수 N으로 나.. 2025. 2. 6.
[백준/Java] 단계별로 풀어보기 7단계 2차원 배열 풀이 (2738 행렬 덧셈 / 2566 최댓값 / 10798 세로읽기 / 2563 색종이) 2738 행렬 덧셈 (자바8 200ms)import java.io.*;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); int M = Integer.parseInt(st.nextToken()); .. 2025. 1. 28.
[Java] 접근제어자 접근 제어자(access modifier)변수나 메서드의 사용 권한을 설정할 때 사용예시와 함께 알아보기패키지 ex01.SmartPhone, Main 이렇게 SmartPhone이라는 클래스를 만들고,  메인에서 사용을 하려면 cpu는 접근이 불가능하다는 것을 알 수 있다. 이는 cpu에 private가 붙어서 그런것이다.그 외에 public이나 아무것도 붙어있지 않은 것은 사용이 가능하다.그렇다면 다른 패키지에 Main을 만들어보면 어떨까? 아래는 패키지 ex02.Main에서 동일한 코드를 작성한 모습이다. public이 붙어있는 sd카드를 제외하고 powerButton은 사용이 불가능한 모습을 볼 수 있다.public이 안붙어있으므로 사용이 불가능하다.접근 제어자는 private  순으로 접근 허용이 .. 2025. 1. 28.
[백준/Java] 2941 크로아티아 알파벳 / 25206 너의 평점은 (백준 단계별로 풀기 6단계 심화1) 백준 단계별로 풀기 6단계 - 심화1후다닥 간단하게 푼 문제들만 모아보았다.자바8과 자바 11을 통해 풀어보았다.2941 크로아티아 (자바8 68ms / 자바11 104ms)  ✏️ 자바 코드크로아티아 알파벳중 H는 없길래 H로 치환해버렸다.import java.io.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] croatia = {"c=","c-","dz=","d-","lj","nj","s=","z="}; Strin.. 2025. 1. 23.
[백준/Java] 1157 단어공부 (가장 많이 사용된 알파벳 출력하기) ⭐️ 1157 단어공부(자바8 276ms, 자바11 392ms) 접근을 잘못했는지..나는 이 문제가 제일 오래 걸리고 어려웠다.그리고 결과 시간도 제일 처참.. 그냥 가장 많이 사용된 알파벳이 무엇인지 출력하는 코드를 구현하면 된다.✏️ 문제 풀이set으로 문자열의 중복을 제거해서이 단어들만 for문을 돌면서 비교해야겠다. 싶었다. 그리고 몇번 나오는지 count하는 배열 만들어서 거기 담고,제일 큰 인덱스의 단어만 출력하도록했다. 그리고 만약 똑같이 최댓값을 가지는 단어가 있는 경우에는이것을 체크해서 ?를 출력하도록 하였다. 내가 짠 코드는 이러하다.제일 위가 가장 많이 나온 문자 결과값이고,가운데가 문자가 몇번 나왔는지 count해서 담은 배열제일 아래가 그 count값의 단어이다. 사실 시간 단축.. 2025. 1. 23.
[백준/Java] 1316 그룹 단어 체커 1316 그룹 단어 체커 (자바8 68ms, 자바11 108ms) 문제 이해가 안되었다.대체 단어 N개를 입력받는거랑 뭔상관이지?✏️ 문제 해설N개의 입력받은 단어중에서, “그룹단어”가 몇개인지 찾는 문제이다.💡 그룹단어란?단어에 존재하는 모든 문자에 대해, 각 문자가 연속해서 나타나는 경우를 말한다.abc ⇒ a,b,c가 연속해서 나타나므로 그룹단어.aba ⇒ a,b가 나온 다음 또 a가 나타나므로 그룹단어 아님.aab ⇒ aa,b 즉, a,b가 연속해서 나타나므로 그룹단어.happy ⇒ h,a,p,y가 연속해서 나타나므로 그룹단어.즉 위에서 그룹단어는 3개이다.✏️ 문제 풀이💭 나의 생각:기준 문자를 하나 잡고, 반복문을 돌면서기존문자와 동일한 문자가 바로 옆이 아니라 뜬금없는 인덱스에 존재한다면.. 2025. 1. 23.