목록SSAFY (13)
우당탕탕 개발일지
문제Starteatingwellwiththeseeighttipsforhealthyeating,whichcoverthebasicsofahealthydietandgoodnutrition.위 문장에서 ti 를 검색하면, 답은 4이다. 찾아야할 문자열과 문장이 주어진다. 찾아야할 문자열이 문장에서 몇번 등장하는지 구하여라 입출력 예 풀이replace 를 통해서 아주 쉽게 구할 수 있다. 주어진 문자열을 특수문자로 변경 후, 특수문자의 개수를 구하면 된다. 코드import java.util.Scanner;import java.io.FileInputStream;class Solution{ public static void main(String args[]) throws Exception { Scanner sc..
문제1238099084 라는 문자열이 주어진다. 아래 그림과 같이 연속으로 반복되는 동일한 숫자가 있을 경우 소거한다. 더이상 소거할 숫자가 없을 때까지 진행하여 남은 문자열을 반환하여라 입출력 예 풀이해당 문제는 연속된 동일한 숫자 소거하는 작업을 반복하는 부분이 중요한다.따라서 해당 작업을 진행하는 함수 removeNum 을 만들어 while문 안에서 호출하도록 설계했다. removeNum 함수는 매개변수로 받은 문자열에 규칙에 따라 소거해야하는 문자를 모두 소거한 후,결과 문자열을 반환한다. 그 후, 결과 문자열의 길이와 이전 문자열의 길이가 동일한지 확인한다.길이가 같다면 더이상 소거할 문자가 없는 것으로 판단하여 결과 값으로 취급한다. removeNum 함수 매개변수로 받은 문..
문제1차원 수직선 위에 정원이 있다. 모든 정수 1 ≤ i ≤ N 에 대해, 좌표 i에 꽃이 하나씩 심겨 있다. 즉, 좌표 1, 2, …, N에 총 N개의 꽃이 심겨 있다.분무기는 정수 좌표에 놓을 수 있으며, 좌표 x에 분무기를 놓았을 경우 닫힌 구간 [x - D, x + D]에 심긴 모든 꽃들에 물을 줄 수 있다.N과 D가 주어질 때, 모든 꽃이 한 개 이상의 분무기에서 물을 받을 수 있도록 하기 위해 필요한 최소한의 분무기 수를 구하는 프로그램을 작성하라. 입출력 예 풀이문제에 의하면 분무기 1개의 범위는 [x - D, x + D] 이다. 해당 범위에 존재하는 꽃의 개수는 D * 2 + 1 개가 된다. 따라서 { 전체 꽃의 개수 / 1개의 분무기가 뿌릴 수 있는 꽃의 개수 } 를 통해서 최소한의 분..
문제 1. 숫자 1부터 순서대로 차례대로 말하되, “3” “6” “9” 가 들어가 있는 수는 말하지 않는다.2. "3" "6" "9"가 들어가 있는 수를 말하지 않는대신, 박수를 친다. 이 때, 박수는 해당 숫자가 들어간 개수만큼 쳐야 한다. 예를 들어 숫자 35의 경우 박수 한 번, 숫자 36의 경우 박수를 두번 쳐야 한다. 입력으로 정수 N 이 주어졌을 때, 1~N 까지의 숫자를 게임 규칙에 맞게 출력하는 프로그램을 작성하라.박수를 치는 부분은 숫자 대신, 박수 횟수에 맞게 “-“ 를 출력한다.여기서 주의해야 할 것은 박수 한 번 칠 때는 - 이며, 박수를 두 번 칠 때는 - - 가 아닌 -- 이다. 입출력 예 풀이1부터 확인하면서 n까지 숫자인지 박수인지 확인한다. 1. 하나의 숫자에 박수 ..
문제다음과 같은 조건 하에서 사재기를 하여 최대한의 이득 구하기 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망에 걸리지 않기 위해 하루에 최대 1만큼 구입할 수 있다. 3. 판매는 얼마든지 할 수 있다.예를 들어 3일 동안의 매매가가 1, 2, 3 이라면 처음 두 날에 원료를 구매하여 마지막 날에 팔면 3의 이익을 얻을 수 있다. 입출력 예 풀이해당 문제는 주어진 판매가 배열의 마지막 원소에서부터 풀면 된다. 구매한 가격보다 판매가가 최고로 큰 경우에만 팔아야 하기 때문이다. 따라서 아래와 같은 방식으로 움직인다. 1. 마지막 원소를 가장 큰 수라고 가정한다. 2. 마지막 원소와 하나 앞의 원소의 크기를 비교 한다. 2-1. 마지막 ..