분류 전체보기

문제 설명 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요. 입출력 예 n return 3 2 5 5 풀이: 문제의 점화식 그대로 사용해서 구현 function solution(n) { let fi = [0, 1]; for(let i=2; i n번째 수 로 반환하여 배열을 사용하지 않고 구현
문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. 입출력 예sanswer "()()" true "(())()" true ")()(" false "(()(" false 입출력 예 설명 ..
문제 설명 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. 입출력 예 s return "1 2 3 4" "1 4" "-1 -2 -3 -4" "-4 -1" "-1 -1" "-1 -1" 풀이: sort함수 사용하여 첫 글자와 마지막 글자를 구함 내가푼 코드 : function solution(s) { var answer = ''; let str=s.split(" ") str...
https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 정답코드: N=int(input()) ropes=[] ropes_num=[] for i in range(N): ropes.append(int(input())) ropes.sort() ropes.reverse() for i in range(N): ropes_num.append(ropes[i]*(i+1)) print(max(ropes_num))
https://www.acmicpc.net/problem/2775 정보: 0층은 호수가 인원수 // 각층의 1호는 인원수:1 // 점화식:dp[i+1][j+1]=dp[i][j+1]+dp[i+1][j] 3층 1 5 15 35... 2층 1 4 10 20 1층 1 3 6 10 0층 1 2 3 4 시간초과 코드: N=int(input()) def dp(floor,num): if floor==0: return num elif num==1: return 1 else: return dp(floor,num-1)+dp(floor-1,num) for i in range(N): floor=int(input()) num=int(input()) print(dp(floor,num)) 시간초과 이유: 재귀로 풀다보면 floor와..
https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 :0~9까지가 세트고 6과9는 같은 숫자로 본다. 총필요한 세트수는? 생각:0~9까지 카운트를 해주자 // 6하고 9만 따로 빼서 카운트하고 더해 2로 나누자! 코드: n=list(map(int,input())) cnt=0 number_list=[] m= n.count(6)+n.count(9) if m%2==0: cnt+=m//2 number_list.append(cnt) else: cnt+=m//2+1 number_list.append(cnt) for i in range(0,10): if..
cmseok
'분류 전체보기' 카테고리의 글 목록 (3 Page)