반응형

Category 169

[ SWEA_D1 ] 2056. 연월일 달력 _ JAVA 문제풀이

풀이 전역변수를 이용해 daycount라는 배열에 각 달에 해당하는 일 수를 저장했습니다. 배열의 인덱스는 0부터 시작하기 때문에 맨 앞 0번째에는 0을 넣어주었습니다. 날짜는 총 8자리로 구성되기 때문에 앞에 4자리를 짤라 연도를, 그 다음 2자리는 월을 그 다음 2자리는 일 수를 연월일을 잘라주기 위해 subString( ) 함수를 사용하였습니다. 그 다음 if 문을 이용하여 불가능한 날짜들은 -1을 출력하도록 해주었고 연도가 3자리인 경우, 월이 1자리인 경우에 대해 각각 if문으로 처리해주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QLkdKAz4DFAUq&categoryId=A..

알고리즘 연습 2019.10.17

[ SWEA_D1 ] 2071. 평균값 구하기 _ JAVA 문제풀이

풀이 각 테스트케이스마다 10개의 수를 입력받습니다. 입력되는 수들은 바로 sum 변수에 더해주었고 10개의 수를 모두 더해준 뒤에 double 형 변수 sum에 Math.round( sum / 10 ) 을 이용하여 정답을 찾아주었습니다. Math.round 함수는 소수점 첫 번째 자리를 반올림하여 정수로 리턴시켜주는 함수입니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QRnJqA5cDFAUq&categoryId=AV5QRnJqA5cDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpe..

알고리즘 연습 2019.10.17

[ SWEA_D1 ] 2070. 큰 놈, 작은 놈, 같은 놈 _ JAVA 문제풀이

풀이 테스트 케이스 별로 두 개의 숫자를 입력받습니다. 이후 if else 문을 이용하여 A보다 B가 큰 경우, 같은 경우, 작은 경우에 대해 각각 알맞은 출력을 할 수 있도록 해주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QQ6qqA40DFAUq&categoryId=AV5QQ6qqA40DFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com

알고리즘 연습 2019.10.17

[ SWEA_D1 ] 2063. 중간값 찾기 _ JAVA 문제풀이

풀이 먼저 주어진 숫자들을 배열에 저장하였습니다. 이후 Arrays.sort( ) 함수를 이용해서 오름차순으로 정렬해준 뒤에 ( N / 2 ) 번째의 수를 출력하여 중간값을 찾아주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QPsXKA2UDFAUq&categoryId=AV5QPsXKA2UDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com

알고리즘 연습 2019.10.16

[ SWEA_D1 ] 1545. 거꾸로 출력해 보아요 _ JAVA 문제풀이

풀이 입력으로 받은 수 N 부터 0까지 출력해주면 되는 문제입니다. 간단하게 for문을 이용해서 1씩 빼주면서 출력해주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV2gbY0qAAQBBAS0&categoryId=AV2gbY0qAAQBBAS0&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com

알고리즘 연습 2019.10.16

[ SWEA_D1 ] 2058. 자릿수 더하기 _ JAVA 문제풀이

풀이 문제에서 자연수는 최대 4자리라고 하여 int[4] 배열을 하나 만들어주었습니다. 숫자를 문자열 String으로 입력받아 그 길이만큼 반복하면서 ( for의 N.length( ) ) CharAt( ) - '0' 연산을 이용해 각 자리수의 값을 sum에 더해주었습니다. 문자열을 CharAt()으로 뽑아내게 되면 하나의 문자 상태가 됩니다. '0' 문자 0은 우리가 사용하는 10진수 int 0과 같지 않으므로 문자를 숫자로 변경해주기 위해 마이너스 ' 0 ' 연산을 해주는 것입니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QPRjqA10DFAUq&categoryId=AV5QPRjqA10DF..

알고리즘 연습 2019.10.16

[ SWEA_D1 ] 2068. 최대수 구하기 _ JAVA 문제풀이

풀이 자바 Arrays 에서 제공되는 Arrays.sort( ) 함수를 이용하였습니다. 항상 10개의 자연수가 입력되므로 for문을 통해 array 0번 부터 10번까지에 저장해둔 뒤 sort( ) 메소드를 이용하여 정렬해주었습니다. 정렬을 해준다면 가장 큰 수는 배열의 마지막에 위치하게 되므로 배열의 마지막 위치인 array[9] ( 배열의 인덱스는 0부터 시작하기 때문. 0 ~ 9 ) 를 출력해주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QQhbqA4QDFAUq&categoryId=AV5QQhbqA4QDFAUq&categoryType=CODE SW Expert Academy SW ..

알고리즘 연습 2019.10.16

[ SWEA_D1 ] 2047. 신문 헤드라인 _ JAVA 문제풀이

풀이 자바에는 문자열을 대문자로 변환하는 toUpperCase( ) 함수와 toLowerCase( ) 함수가 제공됩니다. 이를 이용한다면 문자열 전체를 한 번에 대문자 혹은 소문자로 쉽게 변환할 수 있습니다. JAVA 사용자들에게는 굉장히 쉬운 문제인 것 같습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QKsLaAy0DFAUq&categoryId=AV5QKsLaAy0DFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com

알고리즘 연습 2019.10.16

[ SWEA_D1 ] 2050. 알파벳을 숫자로 변환 _ JAVA 문제풀이

풀이 입력받은 문자열을 숫자로 변환하여 출력하는 문제입니다. str 이름으로 문자열을 입력받아 strs라는 char[ ] 배열에 저장해주었습니다. 그리고 나서 해당 문자에서 'A' 를 빼준 뒤에 +1 연산을 통해 A 는 1로, Z = 26으로 변환하여 출력할 수 있도록 해주었습니다. 코드 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5QLGxKAzQDFAUq&categoryId=AV5QLGxKAzQDFAUq&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com

알고리즘 연습 2019.10.16

[ 백준_BOJ ] 2564. 경비원 _ JAVA 문제풀이

문제 풀이 문제에서 주어진 위치로부터 상점들의 위치들까지에 대한 최단 거리의 합을 구하는 문제입니다. 상점까지의 거리는 시계 방향과 반시계 방향으로 나뉘기 때문에 저는 각각의 Case들에 대해 if else문과 switch문을 이용한 조건 반복문으로 풀이하였습니다. 코드가 상당히 길어지기 때문에 비효율적으로 풀이한 것 같습니다. 각각의 경우에 대하여 블록의 가로, 세로 길이 N과 M은 고정되어 있기 때문에 시계 방향으로 상점을 찾아갈 경우와 반시계 방향으로 찾아갈 경우를 Math.min ( ) 함수를 이용하여 최단거리를 answer 변수에 계속 더하여 최단 거리의 합을 찾았습니다. 코드 출처 https://www.acmicpc.net/problem/2564 2564번: 경비원 첫째 줄에 블록의 가로의 길..

알고리즘 연습 2019.10.16
반응형