SWEA 3499 퍼펙트 셔플 D3 (자바 Java)

java

SWEA 3499 퍼펙트 셔플 문제 정보 문제 카드를 퍼펙트 셔플 한다는 것은, 카드 덱을 정확히 절반으로 나누고 나눈 것들에서 교대로 카드를 뽑아 새로운 덱을 만드는 것을 의미한다. N개의 카드가 있는 덱이 주어질 때 이를 퍼펙트 셔플하면 어떤 순서가 되는지 출력 문제 접근 큐를 사용하여 입력된 문자열을 인덱스의 홀,짝 여부에 따라 분리한 후 순서대로 배열에 저장하는 … Read more

SWEA 8931 제로 D3 (자바 Java)

java

SWEA 8931 제로 문제 정보 문제 재현이는 재민이를 도와서 동아리 장부를 관리하고 있다. 재현이는 영수증을 모아서 동아리의 지출 금액을 세고 있고, 재민이는 재현이가 부르는 액수를 순서대로 적고 있다. 재현이는 가끔 잘못된 수를 부르는 실수를 하는데, 이 때마다 0을 외쳐서, 가장 최근에 재민이가 쓰고 지우지 않았던 수를 지우게 시킨다. 재현이가 모든 수를 부른 후 재민이가 받아 … Read more

SWEA 1289 원재의 메모리 복구하기 D3 (자바 Java)

java

SWEA 1289 원재의 메모리 복구하기 문제 정보 문제 메모리가 초기화 되어 원래 상태로 고쳐야 하는데, 메모리 bit 중 하나를 골라 0인지 1인지 결정하면 해당 값이 메모리 끝까지 덮어 씌워 진다. 모든 bit 가 0인 상태에서 주어진 숫자(원래 상태)로 돌아가려면 최소 몇 번이나 고쳐야 하는지 구하는 문제 접근 메모리의 원래 값을 순회하면서 각 문자를 숫자로 변환 … Read more

SWEA 1989 초심자의 회문 검사 D2 (자바 Java)

java

SWEA 1989 초심자의 회문 검사 문제 정보 문제 level 과 같이 거꾸로 읽어도 제대로 읽은 것과 같은 문장이나 단어를 회문이라고 한다. 입력 받은 단어가 회문이면 1을 출력, 아니면 0을 출력하는 문제 접근 입력 받은 문자열을 뒤집어서 조건문으로 비교한 후 회문이라면 1, 아니라면 0을 출력한다. 풀이 후기 입력 받은 문자열을 뒤집어서 비교하는 문제. 다른 문자열 문제도 … Read more

SWEA 2001 파리 퇴치 D2 (자바 Java)

java

SWEA 2001 파리 퇴치 문제 정보 문제 N x N 배열 안에 숫자는 해당 영역에 존재하는 파리의 개수이다. M x M 크기의 파리채를 한 번 내리쳐 최대한 많은 파리를 죽이고자 한다. 여기서 죽은 파리의 개수를 구하는 문제 접근 4중 for 문을 통해 최대 합을 구하였다. 풀이 후기 for 문이 여러번 중첩되서 조금 헷갈렸지만 집중해서 잘 … Read more

SWEA 1954 달팽이 숫자 D2 (자바 Java)

java

SWEA 1954 달팽이 숫자 문제 정보 문제 1부터 N x N 까지의 2차원 배열의 숫자를 달팽이(나선형) 모양으로 출력하는 문제 접근 반복문을 이용해서 2차원 배열을 달팽이(나선형) 모양으로 채운 뒤 출력 풀이 후기 배열을 채울 때 방향 전환이 헷갈려서 조금 시간이 걸렸던 문제이다. 코드

SWEA 1209 Sum D3 (자바 Java)

java

SWEA 1209 Sum 문제 정보 문제 100X100의 2차원 배열이 주어질 때, 각 행의 합, 각 열의 합, 각 대각선의 합 중 최댓값을 구하는 문제 접근 for 문을 활용하여 2차원 배열을 돌면서 각 행의 합, 각 열의 합, 각 대각선의 합 중 최댓값을 구했다. 풀이 후기 2차원 배열을 돌면서 최댓값을 구하는 문제이다. 2차원 배열을 돌면서 문제를 … Read more

SWEA 1204 최빈수 구하기 D2 (자바 Java)

java

SWEA 1204 최빈수 구하기 문제 정보 문제 0점부터 100점 사이의 점수 중에서 가장 많이 나온 점수(최빈수)를 구하는 문제 접근 배열의 인덱스를 0점부터 100점이라 생각하고, 학생의 점수에 해당하는 인덱스를 증가시켜 카운트 해준 후 최대값을 구했다. 풀이 후기 점수를 인덱스로 활용 할 생각을 빨리 하지 못해서 풀이하는데 시간이 조금 걸렸던 문제입니다. 코드

SWEA 2063 중간값 찾기 D1 (자바 Java)

java

SWEA 2063 중간값 찾기 문제 정보 문제 주어진 배열의 숫자들 중에서 중간 값을 구하는 문제 접근 Arrays.sort() 로 배열을 오름차순으로 정렬해 준 후 중간 인덱스의 값을 구했다. 풀이 후기 Arrays.sort() 를 사용하지 않고 풀 수 있는 다른 풀이 방법들도 많이 있어서 다양한 방법으로 더 풀어볼 계획입니다. 코드

SWEA 1959 두 개의 숫자열 D2 (자바 Java)

java

SWEA 1959 두 개의 숫자열 문제 정보 문제 접근 N의 길이가 길 때와 M의 길이가 길 때를 따로 분리해주고, 2중 for 문을 돌면서 변수 result 에 곱한 숫자의 합을 넣고 그 중 최대값을 구했다. 풀이 후기 각 배열의 인덱스 위치가 헷갈릴 수 있는 문제입니다. 직접 그려보면서 하면 좀 더 빠르게 이해할 수 있습니다. 코드