| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 29 | 30 |
| 31 |
- C언어 계산기 프로그램
- const화
- 문제해결 단계
- C언어 스택 연산
- LAN의 분류
- c언어 괄호검사
- 백준 파이썬
- const l-value참조자
- auto 키워드
- r-value참조자
- string유형
- 프로그래머스 배열만들기4
- getline()함수
- 알고리즘 조건
- 범위 기반 for문
- 논리 연산
- 입출력 관리자
- 유형 변환
- C언어 덱
- 문자형 배열
- 운영체제 기능
- 괄호 검사 프로그램
- 값/참조/주소에 의한 전달
- 주기억장치
- 원형 연결 구조 연결된 큐
- 프로그래머스 푸드 파이트 대회
- 회전 및 자리 이동 연산
- l-value참조자
- IPv4 주소체계
- 네트워크 결합
- Today
- Total
목록Study (284)
chyam
숨어있는 숫자의 덧셈(2) 이 문제를 푸는데 질문을 계속 잘못읽어서 헷갈렸었고 런타임에러도 나면서 많은 실패를 겪었다..ㅎ 먼저 첫번째 조건에 빈 배열이라면 arr[i]을 추가해줘야하는데 계속 0번 인덱스를 추가해서 오류가 났었다...ㅋㅋ 그리고 i에 1을 더하는게 마지막 조건에서는 없는데 이것도 잘 지키지 못했었다..ㅎㅎ 사실 이거만 봤으면 간단한 문제였던것같다.
에라토스테네스의 체 에라토스테네스의 체를 통해 소수를 찾을 수 있다. 중첩 For문을 사용하지 않아도 되어서 더 빠르다. 예를 들어 1부터 100까지의 숫자중 소수를 찾는다면 먼저 1을 제외한다. 그런 후 2를 제외한 2의 배수들을 제거한다. 2는 짝수 중의 유일한 소수이기 때문이다. 3과 5 7도 이와 같은 방식으로 지운다. 이것들을 아래코드로 표현하자면, 이 문제의 범위가 1,000,000이라 MAX값을 이것으로 놔둔다.prime이라는 새로운 배열을 만들어 MAX번째 인덱스까지 값을 True로 만든다.prime의 1번인덱스는 소수가 아니라 False로 미리 변환해준다. for문의 범위를 2부터 MAX의 제곱근을 정수형으로 변환한데까지 해준다.그런 후 만약 prime[i]값이 True라면 j를 2로 두..
숨어있는 숫자의 덧셈(2) 이 때는 isdigit()을 잘 활용하지 못했어서 아스키코드를 사용했었다. 소문자로 바꾸고 알파벳들을 공백으로 바꾸어주었다. 그 후 공백기준으로 나누어주어 정수로 변환하여 더했다. isdigit()을 사용한 풀이이다. 만약 숫자면 그냥 an문자열에 추가하고 아니라면 공백을 추가한다.
팩토리얼 풀때도 느꼈지만 노가다로 풀었다는 생각을 했다. n의 최댓값을 보니 10까지의 곱이어서 while 범위를 a가10이하일때까지로 잡고 만약 sum값이 n과 같으면 a를 바로 리턴해주었다. 하지만 a가 한번더 곱해지고 n과 같아질수도 있으므로 그떄도 a를 바로 리턴해주었다. n보다 크다면 a-1을 바로 리턴해주었다. 아마 내가 이렇게 노가다로 푼 이유가 n이 딱 1*2*3*...해서 정확이 같은 수가 아닐수도 있어서 인것같다. 다시 생각해보면 다르게 했을수도 있었는데.. 이 분들은 answer을 1씩 늘려가며 팩토리얼을 구했다. 나와 다른점으로는 while의 범위가 n보다 같거나 작은거다. 같거나 작으면 반드시 answer값이 1이 더크므로 while뒤에 1을 빼준다.
특별한 이차원 배열1 [[0]*n for i in range(n)]을 통해 n*n배열을 만들어준다. 이걸 잘 몰랐어서 처음에는 [[0]*n]*n ? 이런식으로 했던것같다. 다른사람풀이 보니까 아 ㅋㅋㅋ a랑 b랑 같은데 왜 굳이 중첩for문을 썼을까 생각이 들었다..
문자열 뒤집기 s가 0이 아닐때와 0일때를 나눴다. 0이 아닐때는 s까지문자열 + e번인덱스부터s번 인덱스까지 거꾸로 된 문자열+ e+1번 문자열을 출력해준다. s가 0이라면 가운데에 s-1부분에서 -1이 되기때문에 오류가 생기므로 따로 분류해주었다. e번부터 1번인덱스까지 문자열+0번인덱스+ e+1번 문자열을 출력해주었다. 이분들은 s부터 e번 인덱스까지를 reversed를 통해 뒤집어준 변수를 가운데에 더해주었다.
날짜 비교하기 먼저 년도가 같다면 월을 비교하고 , 월도 같다면 일을 비교하여 앞선 날짜인지 판단하고 리턴하였다.. 그리고 년도가 다른것을 비교하여 리턴해주었다. 다른사람 풀이를 보고 내가 원했던건 이거였다는걸 깨달았다 , , ,
set 자료형 set은 집합으로, 특징이 있다 1. 중복이 허용되지 않는다. 2. 순서가 없다. 그래서 인덱스로 접근 하기 위해서는 리스트도 써줘야한다. set집합 기호 관련 1. 교집합 ("&") 두 집합에서 겹치는 부분을 리턴한다. 2. 합집합 ("|") 두 집합을 합쳐준다. 당연히 중복수는 하나만 리턴된다. 3. 차집합 ("-") 앞에 있는 집합에서 겹치는 부분을 제외한 값이 리턴된다. 관련 함수 1. add함수 값을 하나를 추가해 줄 때 사용한다. 2. update함수 값을 여러개 추가해 줄 때 사용한다. 3. remove함수 값을 삭제할 때 사용한다.
