본문 바로가기
반응형

프론트엔드/알고리즘40

자바 JAVA | 백준 10172번 개 | 이스케이프 문자 활용하여 문자열 출력하는 방법 https://www.acmicpc.net/problem/10172 10172번: 개문제 아래 예제와 같이 개를 출력하시오. 입력 출력 예제 입력 1 복사 예제 출력 1 복사 |\_/| |q p| /} ( 0 )"""\ |"^"` | ||_/=\\__|...www.acmicpc.net ✅ 문제아래 예제와 같이 개를 출력하시오.시간 제한: 1 초메모리 제한: 256 MB 💡 입력없음. 💡 출력개를 출력한다. 💡 예제 입력 1없음. 💡 예제 출력 1|\_/||q p| /}( 0 )"""\|"^"` |||_/=\\__| ✅ 해결💡 해결 계획주어진 출력 예제에 따라 개와 개의 모양을 문자열로 정의한다.문자열을 줄 단위로 출력하여 개와 개의 모양을 출력한다. 💡 코드 1 (성공)시간 복잡도는 .. 2022. 9. 28.
자바 JAVA | 백준 10171번 고양이 | 이스케이프 문자 활용 https://www.acmicpc.net/problem/10171 10171번: 고양이아래 예제와 같이 고양이를 출력하시오.www.acmicpc.net ✅ 문제아래 예제와 같이 고양이를 출력하시오.시간 제한: 1 초메모리 제한: 256 MB 💡 입력없음. 💡 출력고양이를 출력한다. 💡 예제 입력 1없음. 💡 예제 출력 1\ /\ ) ( ')( / ) \(__)| ✅ 해결💡  해결 계획문제에서 주어진 그림을 참고하여, 고양이 모양을 문자열로 정의한다.문자열을 줄 단위로 출력하여 고양이 모양을 출력한다. 💡 코드 1 (성공)시간 복잡도는 O(1)이다.출력하는 문자열이 하드코딩되어 있기 때문에 입력값에 따라 실행 시간에 영향을 받지 않는다. 이스케이프 문자를 이용해 특정 문자를 출력한다.. 2022. 9. 28.
자바 알고리즘 | IMOS 알고리즘을 활용한 구간 중첩 최대값 찾기 ✅ IMOS 알고리즘 시작점과 끝점이 주어진 구간을 처리하는 데 유용한 알고리즘이다. 각 지점에서의 변경 값을 저장하고 누적하여 계산함으로 가장 중첩되는 영역을 구할 수 있다. 쇼핑몰의 판매 기록을 분석하여 특정 기간 동안 가장 많이 판매된 상품의 수량을 구한다. 판매 기록을 날짜별로 분류하여 날짜마다 판매된 상품 수량을 저장한다. 7월 1일부터 7월 3일까지의 구간에서 가장 많이 판매된 상품의 수량을 구하려고 한다. 7월 1일부터 7월 3일까지의 판매량의 누적 합을 구하고 가장 큰 값을 찾으면 된다. 이처럼 구간 중첩 문제를 해결하는 데에 유용한 알고리즘이다. 다양한 문제를 효율적으로 해결할 수 있다. 💡 IMOS 알고리즘 시간 복잡도 입력 데이터의 개수 N과 구간의 개수 M에 선형적으로 비례한다. 전.. 2022. 9. 23.
자바 JAVA | 백준 11660번 구간 합 구하기 5 | 2차원 배열에서 구간 합 구하기 https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네www.acmicpc.net ✅ 문제N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다.예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자.여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3 + 4 + 5 + 4 + 5 + 6 = 27이고, (4, 4).. 2022. 9. 20.
자바 JAVA | 백준 2588번 곱셈 | 연산자를 활용한 세 자리 수 곱셈 계산 프로그램 https://www.acmicpc.net/problem/2588 2588번: 곱셈첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.www.acmicpc.net ✅ 문제(세 자릿수) × (세 자릿수)는 다음과 같은 과정을 통하여 이루어진다.(1)과 (2) 위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6) 위치에 들어갈 값을 구하는 프로그램을 작성하시오.시간 제한: 1 초메모리 제한: 128 MB 💡 입력첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세 자리 자연수가 주어진다. 💡 출력첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. 💡 예제 입력 1.. 2022. 9. 20.
자바 JAVA | 백준 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 | 배열(Array)의 개념과 사용 방법 https://www.acmicpc.net/problem/3003 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다.www.acmicpc.net ✅ 문제동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다.체스판의 먼지를 털어내고 걸레로 닦으니 그럭저럭 쓸만한 체스판이 되었다.하지만, 검은색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다.체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다.동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 .. 2022. 9. 20.
자바 JAVA | 백준 18108번 1998년생인 내가 태국에서는 2541년생?! | 불기 연도와 서기 연도 간의 변환 방법 https://www.acmicpc.net/problem/18108 18108번: 1998년생인 내가 태국에서는 2541년생?!ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국www.acmicpc.net ✅ 문제ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다.불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다.반면, 우리나라는 서기 연도를 사용하.. 2022. 9. 20.
자바 JAVA | 백준 10926번 ??! | Scanner 클래스를 활용한 사용자 입력 처리 방법 https://www.acmicpc.net/problem/10926 10926번: ??!준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때www.acmicpc.net ✅ 문제준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오.시간 제한: 1 초메모리 제한: 256 MB 💡 입력첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루.. 2022. 9. 20.
자바 알고리즘 | 코딩테스트에서 필수적인 시간 복잡도 개념과 활용 방법 최근 자바 공부를 다시 시작하면서 알고리즘 문제를 해결하려고 노력하고 있다. 그러나 여러 문제에서 런타임 에러가 발생하는데, 특히 중첩 for문을 사용하는 경우에 많이 발생한다. 이러한 문제를 해결하기 위해서는 시간 복잡도를 공부하고, 효율적인 알고리즘을 설계하는 방법을 배워야 한다. 시간 복잡도를 이해하면, 같은 문제를 더 효율적으로 해결할 수 있다. ✅ 시간 복잡도 알고리즘이 처리하는 입력 크기와 실행 시간 간의 상관관계를 나타낸다. 알고리즘이 입력 크기에 따라 처리하는 데 걸리는 시간의 증가율을 나타내는 지표이다. 입력 크기와 실행 시간 간의 상관관계를 분석하여 알고리즘의 성능을 평가할 수 있다. 이를 통해 더 효율적인 알고리즘을 설계하고, 불필요한 자원 낭비를 방지할 수 있다. 💡 시간 복잡도 조.. 2022. 9. 19.
자바 JAVA | 백준 11659번 구간 합 구하기 4 | 부분 합을 이용한 구간 합 구하기 알고리즘 https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 jwww.acmicpc.net ✅ 문제수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오.시간제한: 1초메모리 제한: 256 MB 💡 입력첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. 💡 출력총 M개.. 2022. 9. 13.
반응형