망나니 AWOS의 일상
article thumbnail
9월 8일 운동
일상/일기 2021. 9. 8. 22:24

오늘 운동 루틴은 팔굽 (30개, 30개, 20개) 총 80개 걷기 3.76km (기록상) 달리기 5.34km (기록상) 계속 비가 오다가 오늘 날이 개서 나갔다... 초가을이라 그런지 기온이 23도 정도... 해도 여름에 비해 빨리 진다... 겨울이 다가온다는 소리겠죠... 긴 옷이 없어서 팔토시를 하고 나갔다. 물만 안 적시면 꽤 따뜻... 그렇게 느껴지는 걸까 ㅋㅋㅋ 오랜만에 운동을 하는거라서 좀 오랫동안 걷다가 뛰었다. 최고의 페이스라고 찍혀있는걸 보면 다른 때보다 빨리 달렸던 모양이다.

article thumbnail
[python] 백준 1453번 피시방 알바
알고리즘/백준 2021. 9. 7. 23:35

문제 요약 및 풀이 피시방 자리는 1번부터 100번까지 있다. 처음에는 모두 비어있고, 들어오는 손님은 자기가 앉고 싶은 자리에만 앉고 싶어 한다. 해당 자리에 사람이 있으면 거절당한다. 거절당한 사람 수 출력 표로 정리해보았다. sit : 자리 번호 (1 ~ 100) N : 손님의 수 customer : 손님이 앉고 싶은 자리 cnt : 거절 당한 사람 수(누적) 1 5 1 0 2 2 0 3 3 0 4 2 1 5 3 2 ... 이미 1, 2, 3번 자리에는 자리가 있으니... 나중에 들어온 4번째, 5번째 손님이 앉고 싶은 자리 2번, 3번을 못 앉게 된다. 그럼 출력 결과는 2가 나오게 된다. 아래의 코드를 보면 sit의 배열의 크기를 미리 101개를 만들어두었다. 자리는 1~100까지 있지만 배열의..

article thumbnail
학교 강의 사이트 스크래핑
일상/일기 2021. 9. 7. 18:00

일단 오늘 17시까지 수강신청은 끝났다. 듣고 싶었던 강의(웹디자인2)를 신청을 취소했다... ㅠㅠ 미리 말해놓지만 교수님께 나중에 수강신청 취소하더라도 강의 혹시 들을 수 있을까요? 라고 여쭤본 후에 된다고 해서 강의 사이트를 들어가기 위해 스크랩한 것이다. (도강이 아닌 청강...) 지난 1학기 때 같은 경우 즐겨찾기 하면 그 강의를 볼 수가 있었다... (그때 알았었죠... 사이튼 보안 와...) 하지만 어제 막힌 걸 알고 '아 듣고 싶은데...' 그 간절함으로 학교 사이트 웹 스크래핑을 하게 되었다. 우리 학교 사이트는 수강신청을 안한강의는 열람이 원래는 안된다. 이거는 타학교도 마찬가지라고 보는데... 웹디자인2 강의를 청강하기 위해 학교 사이트를 스크래핑하려는 미친놈은 나하나 밖에 없을 거고...

article thumbnail
타전공 수강신청... 스크래핑...
일상/일기 2021. 9. 6. 21:29

수강 신청 내일까지가 수강신청변경기간이다... 웹디자인2... 너무 듣고 싶은 강의이지만... 전공수업 후에 연강이다... 타전공이어서 힘들긴 하다만... 연강인데? 왜? 라고 말할 수 도 있겠지만... 온라인 수업 즉, 실시간 온라인이나 녹화 강의면 무난히 들을 수 있으나... 오프라인(대면)으로 바뀌면 건물 간 거리가 상당하다... 연강이어서 지각은 필수다... 교수님께서 어느 정도(15~20분) 늦는 것은 이해? 해주시겠다고 하셨지만... 뭔가 불안하달까... 듣는다 해도... 팀플 하면서 부족한 내 지식으로 누군가에게 폐를 끼칠 수 있다는 생각도 든다. 그래서 웹디자인 수강신청취소냐 아니면 전공수업 취소냐... 그것이 문제다... 내일까지 기한이기 때문에 결정해야한다.. 적어도 16시 30분까지는..

article thumbnail
[python] 백준 1357번 뒤집힌 덧셈
알고리즘/백준 2021. 9. 6. 17:30

문제 요약 및 풀이 X, Y가 주어졌을 때, X, Y를 Reverse 시키고 합을 구한 후에 다시 Reverse를 시키면 된다. 처음에 문제를 제대로 읽지 않아... X, Y의 합을 구하고 Reverse를 시켰다. 틀려서 다시 대충 읽고 X, Y의 각각에 대해 Reverse를 시키고 합을 구했다. 또다시 틀려서 제대로 읽고 풀었다. 표로 작성을 해보면 아래와 같이 된다. X, Y를 입력받고 표의 오른쪽으로 진행이 된다고 볼 수 있다. X Y T = reverse(X) K = reverse(Y) T+K reverse(T+K) 123 100 321 1 322 223 그냥 간단하게 문자열의 슬라이싱과 리스트를 이용하여 돌렸다. 슬라이싱을 통해 reverse를 구현하였다. 완성된 코드!! 👍😊 s = input..

article thumbnail
9월 5일 운동
일상/일기 2021. 9. 5. 23:18

오늘 운동 루틴은 팔굽 (30개, 30개, 20개) 총 80개 걷기 4.4km (기록상) 뒤로 걷기 1.4km (기록상) 달리기 1.4km (기록상) 비가 21시 쯤에 온다고 되어있었건만... 운동갈때쯤에 빗방울이 떨어지자 발걸음을 돌려 다시 집으로갈까 했지만 그쳐서 운동을 하기로 마음 먹었다. (빗방울 떨어지면서 잊고 있었던 워치가 생각남... 어쩔 수 없지... Strava 쓰는 수밖에...) 사랑니 발치한날로부터 3일째라서 좀 조심해야 돼나 싶기도 했지만 대략 6km 정도를 걷다가 런닝을 해보았다. 앞에서 달리고 있었던 사람이 갑자기 멈춰서 돌아오길래 뭐지 싶었는데... 비가 내리고 있던것... ㅋㅋㅋ

article thumbnail
[python] 백준 20362번 유니대전 퀴즈쇼
알고리즘/백준 2021. 9. 5. 02:34

문제 요약 및 풀이 N개의 채팅 기록 중에 정답자 S의 채팅 내용과 같은 채팅 내용들을 찾으면 된다. 내가 생각한 풀이는 이렇다. 1. 딕셔너리를 만들어서 dict[name] = chat 로 한 쌍을 이루어서 저장 2. 해당 dict[S]를 정답 answer에 대입하여 for문을 돌려 answer와 같은 채팅 내용을 가진 사람들을 카운팅 3. dict[S]가 아닌 사람들을 카운팅 해야 되기 때문에 if문으로 break 예제 입력 1을 예로 들면 N = 3, S = duck일 때 N name chat answer cnt 출력 1 oridya hello 2 orihehe hi hi 1 1 3 duck hi hi 2 표 이해가 안될 수도 있을 텐데... 그 부분은 풀이 1, 2, 3을 참조하면 될 것 같다. ..

article thumbnail
9월 4일 운동
일상/일기 2021. 9. 4. 22:22

오늘 운동 루틴은 팔굽 (30개, 30개, 20개) 총 80개 걷기 8.96km (기록상) 어제 사랑니 발치를 해서 런닝을 해서 출혈이 심하게 된다면... 책임은 고스란히 나의 책임... 뛰고 싶은 마음은 굴뚝같았지만 속보로 운동장을 돌았다. 일주일간 운동을 안 해서 그런지... 발과 발목, 종아리가 살려달라고 울부짖었다. 1시간 20분간의 속보로 다리가 풀렸다. 내일은 뛰고 싶다... 그런데 일기예보에는 비가 온다고 되어있네...

article thumbnail
어제 일상 및 오늘 떠먹는 치즈 감자 만들기... 결과는?
일상/요리 2021. 9. 4. 17:17

어제 아버지와 동창이신 분(원장 선생님)이 치과를 하셔서 이를 전체적으로 다 봐주셨다.(이를 개떡같이 관리해서 파임 현상이 있는 치아가 무려 5개... 1개는 애매해서 코팅만 해주셨고 나머지는 의학용어를 쓰셔서 잘 못 알아들음...) 사랑니가 아직 2개나 남았는데... 오른쪽 위의 사랑니를 발치해주셨다! 원장 선생님께서 이 나이에 치아가 파일 수가 없는데 이를 어떻게 닦았으면... 이렇게 심하냐고... 이를 좌우로 닦는다고 당당하게 말씀드렸더니... 상하로 닦아야 된다고 충고해주셨다... 그 후 진료... (고통이었어... 1시간 동안 긴장과 두려움에 떨어있던 나... 치과는 적응이 안돼요...) 집으로 돌아오는 길에 떠먹는 치즈 감자를 만들기 위해서 마트에 가서 2.5kg의 모짜렐라 치즈와 후추, 파슬..

article thumbnail
[python] 백준 11179번 2진수 뒤집기
알고리즘/백준 2021. 9. 2. 15:25

문제 요약 및 풀이 정수 N -> 13을 입력받아서 2진수로 바꾼 후 2진수를 뒤집어서 그거를 다시 정수로 만들면 된다. 예제 입력 1을 예로 보여주자면 N 2진수로 변환 2진수 reverse 바뀐 N 13 1101 1011 11 위의 표처럼 출력이 나오게 된다. 정수로 입력을 받는데 이진수로 받고, 0b~~~ 이런 식으로 나온 이진수의 앞의 '0b'를 제거해서 숫자만 나오도록 한다. 제거한 숫자(문자열)을 reverse로 순서를 뒤집어주고 0b를 다시 붙여준 후에 10진수로 만들어주면 된다. 아래와 같은 코드로 마무리 짓겠다. 완성된 코드!! 👍😊 s_N = bin(int(input())).replace("0b", "") arr_list = '0b'+''.join(list(reversed(s_N))) ..

article thumbnail
[python] 백준 4948번 베르트랑 공준
알고리즘/백준 2021. 9. 1. 22:00

해당 문제는 1929번의 소수 구하기 문제와 유사하므로 풀이 과정은 생략하겠다. [python] 백준 1929번 소수 구하기 문제 요약 및 풀이 M이상 N이하의 소수를 모두 출력 이 문제 같은 경우 1부터 ~ 1,000,000까지 소수인지 아닌지 일일이 검사한다면 시간 초과가 걸리게 될 것이다. 그렇기에 에라토스테네스의 체라 begin-dev-awos.tistory.com 코드!!👌👌 n = 123456*2 # 0, 1 = False, 소수는 2부터 시작이므로 True 로 설정 a = [False, False] + [True] * (n - 1) primes = [] for i in range(2, n + 1): if a[i]: primes.append(i) for j in range(2 * i, n + ..

내일이면... 개강...
일상/일기 2021. 8. 31. 22:55

두서없이 적어본다... 오늘은 8월의 마지막 날이자 방학의 마지막 날이다... 방학을 알차게 보내고자... 블로그를 개설하고... 알고리즘을 풀며 글을 올리고... 운동을 하고... 여러 가지 비교과나 외부 프로그램 같은 걸 해보았다. 평소와는 다른 방학이었다. 지난 방학들을 돌이켜보면 난 과연 뭘 했는지 모르겠다. 뭔가를 했었는데 그렇게 흥미를 가지고 오랫동안 해보질 않았던 것 같고... 목표를 잡아서 끝내보질 못한 것 같다. 무리하게 잡았던 목표였던 건지... 내일 하지 뭐 이런 식으로 생각해서 놀았던 건지... 뭐.. 과거는 중요하지 않다. 현재에만 집중할 뿐... 졸업까지 대략 1년 반... 나는 할 수 있다고 믿는다. 많이 부족하지만 채워 넣으면 된다. 지금은 1일 1커밋을 안 하면 불안해진다...

article thumbnail
[python] 백준 1929번 소수 구하기
알고리즘/백준 2021. 8. 31. 21:53

문제 요약 및 풀이 M이상 N이하의 소수를 모두 출력 이 문제 같은 경우 1부터 ~ 1,000,000까지 소수인지 아닌지 일일이 검사한다면 시간 초과가 걸리게 될 것이다. 그렇기에 에라토스테네스의 체라는 알고리즘을 쓸 예정이다. 밑의 gif 파일을 보자. 이 gif 파일을 보면 2부터 120사이의 소수를 구하는데 2의 배수, 3의 배수... N의 배수를 검사하는 것을 볼 수 있다. 해당 배수들을 제거하게 되면 소수를 찾을 수 있다. '에라토스테네스의 체'의 시간복잡도는 O(Nlog(logN))이다. 일단 M과 N의 제한은 (1 ≤ M ≤ N ≤ 1,000,000) 이기 때문에 1부터 1,000,000까지의 소수를 미리 구해놓고 M과 N사이의 소수를 반환시켜줄 것이다. N의 배수를 제거해야 되기 때문에 b..

article thumbnail
[python] 백준 1834번 나머지와 몫이 같은 수
알고리즘 2021. 8. 30. 21:20

문제 요약 및 풀이 어떤 자연수(K)를 N으로 나누었을 때 나머지와 몫이 같은 자연수의 합을 구해라. K % 3이라면 몫이 1이고 -- 나머지가 1인 4와, 몫이 2이고 -- 나머지가 2인 8이 나올 것이다. 두 자연수의 합은 12가 된다. 잘 이해가 안 되면 아래의 표로 설명하겠다. K % N 몫 나머지 K K의 배수 K % 2 1 1 3 3 K % 3 1 1 4 4 2 2 8 K % 4 1 1 5 5 2 2 10 3 3 15 K % 5 1 1 6 6 2 2 12 3 3 18 4 4 24 K % 6 1 1 7 7 2 2 14 3 3 21 4 4 28 5 5 35 위의 표처럼 나타내면 규칙이 보인다. 몫과 나머지는 1부터 N-1까지이고 K를 N으로 나누었을 때 K는 N+1의 배수인걸 알 수 있다. N이 ..

article thumbnail
[python] 백준 1158번 요세푸스 문제
알고리즘/백준 2021. 8. 28. 23:44

문제 요약 및 풀이 입력이 7 3일 때 (1 2 3 4 5 6 7) 번까지 총 7명의 사람이 원을 이루고 있게 되고 3번째 사람을 제거하게 되는데 표로 보여주겠다. 리스트를 이용해서 풀면 되겠다 싶었다. 배열의 index값은 0번째부터 시작이니 k=3이라면 list[2]라고 생각하면 된다. K번째 사람이 제거 될때마다 리스트의 사이즈가 하나씩 줄어드는 걸 볼 수 있다. 1 2 3 4 5 6 7 [0] [1] [2] [3] [4] [5] [6] 3 1 2 4 5 6 7 [0] [1] [2] [3] [4] [5] 6 1 2 4 5 7 [0] [1] [2] [3] [4] 2 1 4 5 7 [0] [1] [2] [3] 7 1 4 5 [0] [1] [2] 5 1 4 [0] [1] 1 4 [0] 4 빨간색만을 보면..

article thumbnail
8월 28일 운동
일상/일기 2021. 8. 28. 23:03

오늘 운동 루틴은 팔굽 (30개, 30개, 20개) 총 80개 걷기 2.31km (기록상) 달리기 5.19km (기록상) 노을 정말 오랜만이다... 이쁘다...