SSENI's
search
sseni
말하는 감자에서 자라기
Today
Yesterday
Programmers (49)
https://school.programmers.co.kr/learn/courses/30/lessons/12916 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. public class Solution12916 { boolean solution(String s) { int pCnt = 0, yCnt = 0; // p, y 카운트 변수 s = s.toLowerCase(); // s 문자열 모두 소문자로 변환 for(int i=0; i
https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다. import java.util.Arrays; public class Solution70129 { public int[] solution(String s) { int cnt = 0, zero = 0; // 변환 횟수, 제거한 0 개수 while(!s.equals("1")){ // s 가 ..
https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr class Solution { public int solution(String s) { int answer = s.length(); // ex. "abcabcdede" for (int i = 1; i < s.length() / 2 + 1; i++) { String pattern = s.substring(0, i); int cnt = 1; String tmp = ""; for (int j = i; ..
자연수 뒤집어 배열로 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/12932 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 알고리즘 n → String 변환 → reverse → int 변환 StringBuilder 이용 // 1번 public int[] solution(long n) { String s = String.valueOf(n); // n을 String 으로 변환 int[] answer = new int[s.length()]; // n의 자릿수만큼 answer 배열 크기 지정 i..
https://school.programmers.co.kr/learn/courses/30/lessons/12949 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다. 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다. 곱할 수 있는 배열만 주어집니다. 3x2 → 2x2 → 3x2 3x3 → 3x3 → 3x3 row: 3 col: 2 package com.example.javaproject3.psstudy; import java.util.Arrays; public..
https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 대기실 5개 5x5 크기 맨해튼 거리가 2 이하로 앉지 말아주세용 if) 2일 때, 파티션을 두고 앉으면 ok. 책상이면 no. 사람 P 빈테이블 O 파티션 X 알고리즘 주변에 사람이 있는가? 있다면, 맨해튼 거리가 2 이하인가? 1이면 거리두기 x 2이면, 사이가 파티션이면, 거리두기 o 책상이면, 거리두기 x 파티션일 때는 계산 x, 현 위치가 사람 or 빈테이블일 때만 계산 P면 pas..
https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 1. n 1이상 1000이하 4 → 1 + 2 + 3 + 4 = 10 까지의 수 5 → 1 + 2 + 3 + 4 + 5 = 15 까지의 수 n = 6 일 때, 삼각 달팽이 형태 1,1 → 2,1 → 3,1 → 4,1 → 5,1 → 6,1 6,2 → 6,3 → 6,4 → 6,5 → 6,6 5,5 → 4,4 → 3,3 → 2,2 3,2 → 4,2 → 5,2 5,3 → 5,4 4,3 알고리즘 wh..
https://school.programmers.co.kr/learn/courses/30/lessons/87377?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 line 행 길이 - 2 이상 1000 이하 열 길이 - 3 result 1000 * 1000 이내 별이 한 개 이상 그려짐 알고리즘 두 직선 끼리의 교점 구하기 if) 겹치는 교점이 있다면? ex. 세 직선의 교점이 하나이거나 if) 교점이 없다면? ad - bc = 0 일 때 → 두 선이 평행일 때, 일치할 때 교점 리스트 중 최대 x, y, 최소 x, y 구하기..
https://school.programmers.co.kr/learn/courses/30/lessons/87389 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 세상엔 천재가 너무 많아요 def solution(n): x = 1 for i in range(n): if n%x == 1: return x else: x += 1 # 참고하기 def solution(n): return min([x for x in range(1, n+1) if n % x == 1]) # 1이 되는 수들을 리스트에 차례대로 넣으니 제일 앞에 있는 수가 작은 수일 수 밖에 def s..
https://school.programmers.co.kr/learn/courses/30/lessons/12933 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음엔 반복문으로 리스트를 합쳤는데 join 함수를 쓰자 ! 리스트 합치기 ex. arr = [’a’, ‘b’, ‘c’] “”.join(arr) → abc “-”.join(arr) → a-b-c 3단 코드 변화 >>> def solution(n): arr = sorted([int(s) for s in str(n)], reverse=True) s = '' for i in arr: s += str(i..
https://school.programmers.co.kr/learn/courses/30/lessons/12954 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 오류는 났지만,,, (아마 0일 때 if를 처리해줘야 할듯. 귀찮음) list(range(x, (n+1)*x, x)) 이런 식으로 가능!! def solution(x, n): return [(i+1) * x for i in range(n)] https://school.programmers.co.kr/learn/courses/30/lessons/12934 프로그래머스 코드 중심의 개발자 채용. 스택..
https://school.programmers.co.kr/learn/courses/30/lessons/12937 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(num): return "Odd" if num % 2 == 1 else "Even" # 다른 코드 참고 def solution(num): return ["Even", "Odd"][num & 1] https://school.programmers.co.kr/learn/courses/30/lessons/12932 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. ..
https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr isalpha() : 알파벳인지 확인 isdigit() : 숫자인지 확인 upper() : 문자열을 소 -> 대문자로 lower() : 문자열을 대 -> 소문자로 title() : 문자열 중 단어 앞만 대문자로 ( string.capitalize()와 같음 ) string.capwords(s, sep=' ') : 각 단어의 첫 번째 문자를 대문자로 구분하여 문자열을 반환 sep 매개 변수에 값이 ..
https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이런식으로 년월일 계산하다가 .. 손해봤다 .. 그마져도 틀렸다 .. 그냥 일로 모두 바꿔서 비교가 훨씬 쉽다. 일 수가 28일로 정해져 있기 때문에 ! def solution(today, terms, privacies): answer = [] today = [int(i) for i in today.split(".")] term, privacy = {}, {} for i in terms: ter..
https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(s): arr = [int(i) for i in list(s.split((' ')))] return str(min(arr)) + " " + str(max(arr))
https://school.programmers.co.kr/learn/courses/30/lessons/42840?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr c++로 풀어져 있었던 문제 . . python 으로 다시 풀었는데 비슷하게 풀었다. def solution(answers): arr1 = [1,2,3,4,5] arr2 = [2,1,2,3,2,4,2,5] arr3 = [3,3,1,1,2,2,4,4,5,5] n1,n2,n3 = 0,0,0 for i in range(len(answers)): n1 += (answers[..
https://school.programmers.co.kr/learn/courses/30/lessons/12947 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음에 x 범위를 확인 못하고 구현했다 . . 조건 잘 확인하깅 def solution(x): n = 0 tmp = x while tmp != 0: n += tmp%10 tmp //= 10 return True if x%n == 0 else False def solution(x): n = list(str(x)) num = 0 for i in n: num += int(i) return True if..
https://school.programmers.co.kr/learn/courses/30/lessons/42862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr (참고) set으로 중복 제거한다 . . remove를 하게 되면 index가 밀려서(?) 다음 항목이 제거 안됨 . . 이걸 두 번이나 실수했네 ㅠㅠ 마지막에 arr.remove(-1) 이라고 썼다가 . . def solution(n, lost, reserve): arr = [0] * (n+2) for r in reserve: arr[r] += 1 for l in lost: arr[l] -= 1..
https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나는 값 4개를 따로 저장해서 비교했는데 stack[-4:] 를 다들 쓰네요 . . 4개를 pop 해서 맞으면 지우고 answer +1 아니면 다시 stack에 저장 (근데 틀렸다) Stack (python 버전) init : stack = [] push : stack.append() pop : stack.pop() top : stack[-1] def solution(ingredient): an..
https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음에는 문제대로 정직하게 . . 맞고 나서, 다른 분의 풀이보고 감탄하기 . . # i~j 번째 숫자까지 자르고 정렬했을 때, k 번째에 있는 수 구하기 # [1,5,2,6,3,7,4], i=2, j=5, k=3 # [5,2,6,3] -> [2,3,5,6] -> 5 def solution(array, commands): answer = [] for c in commands: arr = array..