![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/d4bjzU/btscQP7DUsv/awE2gGKSTsUhPD0AZKUgqk/img.png)
문제 링크 2444번: 별 찍기 - 7 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 문제 풀이 n = int(input()) for i in range(1,n+1): print(" "*(n-i) + "*"*(2*i-1)) for i in range(n-1, 0, -1): print(" "*(n-i) + "*"*(2*i-1)) *key point: 별의 개수가 증가하는 부분과 감소하는 부분으로 나누고 for문을 활용한다. range 함수의 범위를 역순으로 지정하고 싶을 때는 세번째 파라미터로 음수를 넣어준다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/unWSr/btscPbI6t8a/bLcjk4SBxIKLdiEglq35n0/img.png)
문제 링크 11718번: 그대로 출력하기 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시 www.acmicpc.net 문제 풀이 import sys s = sys.stdin.readlines() for i in s: print(i.rstrip()) *key point: sys 모듈의 readlines()를 이용하면 개행문자를 포함하여 input 값을 받을 수 있다. 입력된 개행 문자는 rstrip() 메서드로 없애준다. *comment: 문자열 자체가 문제가 아니라 입력값의 개수가 정해져 있지 않다는 점이 이 문제의 핵심이었다. 위와 같은 방법으로 풀..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c06MLG/btscQzoSRwc/jDk6Q0RVpn4Q4KbHIshKqK/img.png)
문제 링크 9086번: 문자열 입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으 www.acmicpc.net 문제 풀이 t = int(input()) for _ in range(t): s = input() print(s[0],s[-1], sep="") *key point: index에 음수를 넣으면 뒤에서 부터 요소를 찾을 수 있다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/TSF8v/btscRqEYy5P/zG5kQHkyTwyKLYcnWK2mB0/img.png)
문제 링크 27866번: 문자와 문자열 첫째 줄에 영어 소문자와 대문자로만 이루어진 단어 $S$가 주어진다. 단어의 길이는 최대 $1\,000$이다. 둘째 줄에 정수 $i$가 주어진다. ($1 \le i \le \left|S\right|$) www.acmicpc.net 문제 풀이 s = input() i = int(input()) print(s[i-1]) *key point: 파이썬에서는 문자열 안의 문자를 index로 접근할 수 있다.
쿠키와 세션은 무엇이며 어떤 차이가 있나요? HTTP 프로토콜은 비연결(Connectionless)을 지향하고, 상태정보를 유지하지 않는(Stateless) 특징이 있습니다. 이러한 특징 덕분에 리소스의 낭비를 크게 줄여주지만, 매 통신마다 클라이언트가 인증을 필요로하게 됩니다. 쿠키와 세션은 이 단점을 보완하는 기술입니다. 두 기술의 가장 큰 차이는 저장 위치로, 쿠키는 클라이언트에 세션은 서버에 저장됩니다. 그래서 쿠키는 빠르지만 보안이 취약하게 되고, 세션은 느리지만 상대적으로 보안성이 좋습니다. 또 쿠키는 브라우저가 종료되어도 남아있게 되고, 세션은 삭제된다는 차이도 있습니다. 일반적으로 보안성이 중요할 때는 세션을, 종료 시에도 유지되도록 하려면 쿠키를 사용하는 등 두 기술을 병행해서 활용하게 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ldSDj/btr5dSit7Fj/1Ju4RKzDxFJfqdlf0kiYcK/img.png)
1. 아래 상태처럼 빈 repository를 만들기 2. 프로젝트 디렉토리에서 Git Bash(Window) or 터미널(Mac)을 실행해 명령어를 입력한다. 깃 초기화 git init 상태 확인(필수 x) git status 모든 파일 staging area로 이동 git add . 상태 확인(필수 x) git status 커밋 git commit -m "커밋 메세지" 브랜치 이동 (github 기본 브랜치와 맞춤) git branch -M main ** 매번 하기 귀찮으면 git config --global init.defaultBranch main ** 설정 확인 git config --get init.defaultBranch GitHub repository와 연결 git remote add ori..
화살표 함수란 무엇인가요? 화살표 함수는 ES6에서 추가된 비교적 최근 문법으로, 함수를 아주 간결하게 표현하는데 사용할 수 있습니다. 기본적으로 function 키워드를 생략할 수 있고, 매개변수가 하나라면 괄호를, 바디가 표현식 하나로 이루어져 있다면 중괄호와 return 키워드까지 생략할 수 있습니다. 이러한 편의성 외에 가지고 있는 큰 특징으로는 this가 있습니다. 화살표 함수 내에서의 this는 자신이 선언된 위치의 this(=Lexical this)를 가리키고, call, apply, bind 메서드를 사용하여 this를 변경할 수 없습니다. 이 때문에 화살표 함수는 메서드, 생성자, 이벤트 리스너의 콜백 함수로는 사용할 수 없지만, 일반적인 콜백 함수에서 유용하게 사용될 수 있습니다. Re..
객체 지향 프로그래밍이란 무엇인가요? 객체 지향 프로그래밍은 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체로 만들고, 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법입니다. 기존의 절차적 프로그램이 컴퓨터 중심적 이라면, 객체 지향 프로그래밍은 현실 세계 중심적인, 즉 컴퓨터가 아니라 사람이 실제로 생각하는 것처럼 구현하고자 하는 프로그래밍 방법입니다. 이러한 구현 방식 때문에 생산성, 재사용성은 좋고, 버그 발생은 적고, 디버깅과 유지보수가 쉽습니다. 또, 객체 지향 프로그래밍을 설명할 때 가장 많이 등장하는 것이 4개의 특징과 5개의 원칙입니다. 먼저 4개의 특징은 추상화, 캡슐화, 상속, 다양성입니다. 그리고 5개의 원칙은 SOLID 원칙이라고도 하는데, S 단일 책임 원칙, O 개..
- Total
- Today
- Yesterday
- 5597
- 26069
- Wil
- 백준
- til
- 코육대
- 24723
- 24060
- MySQL
- 20920
- 항해+
- 17103
- SQL
- Python
- 13241
- 2738
- 1269
- 25501
- 벡준
- 24313
- Programmers
- 13909
- 4134
- 10807
- 25192
- programmer
- 2587
- 2903
- 항해 플러스
- 2053
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |