본문 바로가기

Problem Solving34

[Programmers] Level1 직사각형 별찍기 https://school.programmers.co.kr/learn/courses/30/lessons/12969 * 문제 설명 프로그래머스 Level1 직사각형 별찍기 표준 입력으로 두 개의 정수 n과 m이 주어짐 별(*) 문자를 이용해 가로의 길이 n, 세로의 길이 m인 직사각형 형태 출력 * 입출력 예 입력) 5 3 출력) ***** ***** ***** * 소스코드1 1. 정수 n과 m을 nextInt()로 입력받는다. 2. 이중 for문을 이용하여 직사각형을 만든다. *주의할 점은 for문에 순서에 따라 직사각형이 달라지기 때문에 순서를 잘 고려하면 됨.* print: 개행 없음/println: 개행 최종 코드) import java.util.Scanner; public class Solutio.. 2022. 8. 3.
[Programmers] Level1 문자열 내 p와 y의 개수 https://school.programmers.co.kr/learn/courses/30/lessons/12916 * 문제 설명 프로그래머스 Level1 문자열 내 p와 y의 개수 대문자, 소문자가 섞여있는 문자열 s s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return하는 solution 완성하시오. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴 단, 개수를 비교할 때는 대문자와 소문자를 구별하지 않음 * 입출력 예 s answer pPoooyY true Pyy false * 소스코드1 1. 문자열의 길이만큼 연산 str.length() for문을 사용해서 문자열을 길이만큼 연산하도록 한다.for(int i=0; i 2022. 8. 2.
[Programmers] Level1 자릿수 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/12931 * 문제 설명 프로그래머스 Level1 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return하는 solution 함수를 만들라 예를 들어 N = 123이면 1+2+3=6 을 return 하면 된다. * 입출력 예 N answer 123 6 987 24 * 소스코드1 1. 숫자를 쪼개기 힘들기 때문에 문자열로 변환 숫자를 문자로 변환은 생각보다 간단하다........! new String으로 선언한 후, 파라미터로 입력받은 n과 텅 빈 값("")을 붙이면(+) 된다. (long n = 12345 이었으면, String str = 12345; 문자열이 된다.) 2. 문.. 2022. 8. 2.
[Programmers] Level1 자연수 뒤집어 배열로 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/12932 * 문제 설명 프로그래머스 Level1 자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴 예를 들어, n이 12345이면 [5, 4, 3, 2, 1]을 리턴 * 접근 포인트 1) 자연수 n의 자릿수에 구애받지 않고 성립해야 한다. - 제한 조건 n은 10,000,000,000이하인 자연수입니다. 2) 숫자열을 배열로 쪼개야 한다. 3) 숫자열의 순서를 뒤집어야 한다. * 소스코드1 1. 숫자를 쪼개기 힘들기 때문에 문자열로 변환 숫자를 문자로 변환은 생각보다 간단하다........! new String으로 선언한 후, 파라미터로 입력받은 n과 텅.. 2022. 8. 1.
프로그래머스 Level 1 모음 Level 1 1 신고 결과 받기 2 로또의 최고 순위와 최저 순위 3 신규 아이디 추천 4 숫자 문자열과 영단어 5 키패드 누르기 6 크레인 인형뽑기 게임 7 없는 숫자 더하기 8 음양 더하기 9 내적 10 소수 만들기 11 폰켓몬 12 완주하지 못한 선수 13 K번째 수 14 모의고사 15 체육복 16 실패율 17 약수의 개수와 덧셈 18 3진법 뒤집기 19 예산 20 두 개 뽑아서 더하기 21 2016년(연습문제) 22 최소직사각형 23 나머지가 1이 되는 수 찾기 24 부족한 금액 계산하기 25 [1차] 비밀지도 26 가운데 글자 가져오기(연습문제) 27 [1차] 다트 게임 28 같은 숫자는 싫어 29 나누어 떨어지는 숫자 배열(연습문제) 30 두 정수 사이의 합(연습문제) 31 문자열 내 마음대.. 2022. 8. 1.
[Java Algorithm] 1-4 단어 뒤집기(StringBuilder 이용법 또는 직접 뒤집기) * 문제 설명 N개의 단어가 주어지면 각 단어를 뒤집어 출력하는 문제 입력: 첫 줄에 자연수 N(3 2022. 7. 27.
[알고리즘] 큐(Queue) 정리 & 문제 풀이(Python) 큐 : 자료구조 중 하나로, 먼저 넣은 데이터가 먼저 나오는 FIFO(First In First Out)구조이다. - 큐는 한쪽 끝에서는 삽입 연산만 이루어지며 다른 한쪽 끝에서는 삭제 연산만 이루어지는 유한 순서 리스트이다. - 구조상으로 큐가 스택과 다른 점은 스택에서는 삽입과 삭제가 같은 쪽에서 일어나지만 큐에서는 다른 쪽에서 일어난다. 큐의 연산 큐의 포인터 - front: 큐의 첫 번째 원소를 가리키는 포인터 - rear: 큐의 마지막 원소를 가리키는 포인터 - push(): 큐에 값을 넣는 연산 (Enqueue) rear 위치에 자료를 추가하고 rear를 1 증가시킴 - pop(): 큐에서 자료를 빼는 연산 (Dequeue) front 위치에 자료를 제거하고 front를 1 증가시킴 - fro.. 2022. 2. 7.
[알고리즘] 스택(Stack) 정리 & 문제 풀이(Python) 스택 : 자료구조 중 하나로, 먼한 쪽 끝에서만 자료를 넣고 뺄 수 있는 LIFO(Last In First Out) 구조이다. - 파이썬은 스택 자료구조를 제공하지 않는다. 기본 클래스인 list를 통해 스택을 흉내낼 수 있다. 스택의 연산 - push(item): item 하나를 스택의 가장 윗 부분에 추가한다. - pop(): 스택 가장 위에 있는 원소를 삭제하고 그 원소를 반환한다. - peek(): 스택 가장 위에 있는 원소를 반환한다. (삭제하지는 않는다.) - isEmpty(): 스택이 비어있다면 1, 아니면 0을 반환한다. 대표적인 문제 및 사용 - 웹 브라우저 방문기록(뒤로가기) - 실행 취소(undo) - 역순 문자열 만들기 - 수식의 괄호 검사(연산자 우선순위 표현을 위한 괄호검사) -.. 2022. 1. 31.
[운영체제] 메모리 구조 (재귀호출 vs 반복문) 재귀에서 탈출조건(적절하게 빠져나오는 구문?)이 없으면 스택오버플로우가 발생한다. why? 스택에서 뭔 문제가 있겠지!! 스택이 존재하는 메모리 구조를 더 이해해두기 위해 포스팅한다. 메모리 구조 https://blog.naver.com/zzaxowns/222611286857 (참고블로그! 여기 더 자세하게 설명되어있는듯한..) 프로그램이 운영체제로부터 할당받는 대표적인 메모리 공간은 다음과 같다. 코드(Code) 영역 실행할 프로그램의 코드가 저장되는 영역이다. 프로그램이 시작하고 끝날 때까지 메모리에 계속 남아 있는다. 컴파일된 기계어가 들어가게 된다. CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리한다. 데이터(Data) 영역 프로그램의 전역 변수와 정적 변수, 문자열 상수가 저장되는 영.. 2022. 1. 26.