분류 전체보기
짝지어 제거하기→'문자비교' == , "문자열비교" equals, peek()★★+크레인 인형뽑기와 유사
나의 풀이 import java.util.*; class Solution { public static int solution(String s) { Stack stack = new Stack(); for (char c : s.toCharArray()) { stack.push(c); if (stack.size() >= 2) { if (stack.peek() == stack.get(stack.size() - 2)) { stack.pop(); stack.pop(); } } } if (stack.isEmpty()) { return 1; } else { return 0; } } } ▶ 스택에서 마지막 요소를 꺼내어 보고 싶을 때는 peek()를 사용하자 ▶ 스택이 비었는지 확인할 때 자바는 isEmpty()를 쓰고..
짝지어 제거하기→크레인 인형 뽑기와 유사★★
짝지어 제거하기 def solution(s): stack=[] s=list(s) for i in range(len(s)): stack.append(s[i]) if len(stack)>=2: if stack[-1]==stack[-2]: stack.pop() stack.pop() if len(stack)==0: return 1 else: return 0 ▶ stack의 구조를 이용한다.
카펫→ 리스트 배열넣기, 리스트 출력★★
나의 풀이 import java.util.*; class Solution { public int[] solution(int brown, int yellow) { ArrayList list = new ArrayList(); int[] answer = {0, 0}; for (int i = 1; i
카펫→ 약수는 제곱근까지만 구하기, 2차원 리스트 요소2개 x,y로 접근★★
나의 풀이 from math import * def solution(brown, yellow): divisor = [] for i in range(1, int(sqrt(yellow))+1): if yellow % i ==0: divisor.append([yellow//i, i]) for y_width, y_height in divisor: if brown ==(y_width+2)*(y_height+2)-yellow: a, b=y_width+2, y_height+2 return a,b ▶ 일단 yellow의 약수의 순서쌍을 구한다. 다만, sqrt(n)까지만 구한다. ▶ 2차원 리스트의 각 행의 요소가 2개인 경우 y_width, y_height 2개의 임시변수로 접근할 수 있다. ▶ if brown ==..