전체 글

전체 글

    [백준] 1158번: 요세푸스 문제 (Python)

    [백준] 1158번: 요세푸스 문제 (Python)

    문제 📄 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 내 풀이 💻 N, K = map(int, input().split()) arr = [i for i in range(1,N+1)] result = [] index = 0 while len(arr)>0: index += K-1 index %= len(arr) result.append(arr[index]) del arr[index] print("") 문제에 주어진 것처럼 (N, K)가 (7, 3)일 때를 가정하고 문제를 풀어보자. 주어진 수의 배열이 1부터 7일 때 3번째 숫자를 제거하는 과정은 다음과 같다. 1 2 3 4 5 6 7 (3 제거할 차..

    [백준] 5598번: 카이사르 암호 (Python)

    문제 📄 5598번: 카이사르 암호 가이우스 율리우스 카이사르(Gaius Julius Caesar)는 고대 로마 군인이자 정치가였다. 카이사르는 비밀스럽게 편지를 쓸 때, 'A'를 'D로', 'B'를 'E'로, 'C'를 'F'로... 이런 식으로 알파벳 문자를 3개씩 건 www.acmicpc.net 내 풀이 💻 word = input() orgin = [] for w in word: ascii_num = ord(w) if ascii_num >= 68: orgin.append(chr(ascii_num-3)) else: orgin.append(chr(ascii_num + 23)) print(''.join(orgin)) 설명 🔑 ord(문자) - 문자를 ASCII number로 바꾸기 (ord는 ordinal..

    [백준] 2444번: 별 찍기 - 7 (Python)

    [백준] 2444번: 별 찍기 - 7 (Python)

    문제 📄 2444번: 별 찍기 - 7 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 내 풀이 💻 N = int(input()) for i in range(1,N+1): for _ in range(N-i): print(" ",end='') for _ in range(2*i-1): print("*",end='') print() for i in range(1,N): for _ in range(i): print(" ",end='') for _ in range(2*(N-i)-1): # (2*N-1)-2*i print("*",end='') print() Review 🙋‍♀️ 파이썬 내의 문자열 반복 기능을 이용하면 for 문을 여러 개 돌리지 않아도 될 뻔했다. N = in..

    [JS] prototype 참고글

    https://medium.com/@bluesh55/javascript-prototype-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-f8e67c286b67 [Javascript ] 프로토타입 이해하기 자바스크립트는 프로토타입 기반 언어라고 불립니다. 자바스크립트 개발을 하면 빠질 수 없는 것이 프로토타입인데요. 프로토타입이 거의 자바스크립트 그 자체이기때문에 이해하는 것이 어렵 medium.com 흥미를 잃지 않게 도입부부터 친절하게 설명한 다음, 그림과 그에 대한 해설로 직관적으로 이해가 되게 잘 설명해놓은 글이다. 이것만 읽으면 프로토타입에 대해 이해하는 것은 문제가 없을 듯. 개념이 가물가물해질 때마다 다시 보면 좋을 듯하다.

    [JS] String 오브젝트에 굳이 toString()이 있는 이유

    [JS] String 오브젝트에 굳이 toString()이 있는 이유

    toString() 메소드란? toString()은 어떤 대상을 문자열로 바꿔주는 메소드이다. Number 오브젝트에 있는 toString() 함수는 숫자를 문자열로 바꿔준다. String 오브젝트에 있는 toString()은 문자열을 문자열로 바꿔준다. 문자열을 굳이 문자열로 바꿔줄 필요는 없어 보인다. 왜 String 오브젝트에는 toString() 메소드가 존재하는 것일까? 그 이유를 알려면 먼저 프로퍼티(property)와 프로토타입(prototype)에 대해 알 필요가 있다. 프로퍼티와 프로토타입 프로퍼티는 name-value 쌍을 뜻한다. 예를 들면 {name: "Carrot", eyeColor: "blue", meow: meow()} 는 프로퍼티이다. 여기서 meow() 처럼 value 자리..

    [JS] undefined와 null의 차이

    undefined 변수를 선언하면 자동으로 undefined 값이 할당된다. 그러므로 undefined는 아직 값을 따로 할당하지 않았다는 표시이다. undefined도 값이니 이렇게 기본적으로 할당되는 undefined 외에도 당연히 변수에 undefined을 할당할 수 있다. 하지만 값을 아직 할당하지 않은건지 undefined를 의도적으로 할당해준건지 구분하기 힘드므로 권장하지 않는다. 그래서 둘을 구분하기 위해 null이 필요하다. typeof 연산자를 통해 타입을 확인하면 undefined는 undefined 타입이다. null 아무 값도 가지고 있지 않다고 표시해주고 싶은데 undefined를 할당하자니 아직 초기값을 설정해주지 않은 변수와의 구별이 어렵다. 그럴 때에는 null값을 할당해주면..

    [CSS]background image

    background-repeat 속성 repeat 혹은 background-repeat을 지정하지 않았을 때 이미지가 수직, 수평 모든 방향으로 반복된다. no-repeat 이미지를 반복하지 않음 repeat-x 옆으로(horizontally) 반복 repeat-y 수직으로(vertically) 반복 * 영어로는 어떻게 표현하는 지 알아두는 것도 도움이 됩니다. vertical 수직의, horizontal 수평의 horizontally 반복해 달라고 하면 repeat-x vertically 반복해 달라고 하면 repeat-y

    [CSS]display 속성 (block, inline, inline-block, none)

    ●block width, height 지정 가능 margin, padding 지정 가능 ~ list 태그 (, , , , , ) navigation 태그 (, , , , , ) ●inline width, height 지정 불가 width는 컨텐츠 길이만큼 지정됨, hegith는 폰트 크기만큼 지정됨 margin 위아래X / padding 좌우O, 위아래O(But only 시각O, 공간 차지X) ●inline-block block처럼 줄바꿈이 이루어지지 않음 block처럼 height, width 지정 가능, 만약 지정 안했을 경우 inline처럼 크기가 컨텐츠 크기 만큼 잡힘 ●none 지정된 요소가 아예 없는 것처럼 사라지게 보임. visibility:hidden과는 다른 점은 visiblity:hid..