Coding Is My Life

코딩은 인생

728x90

분류 전체보기 108

[Code Ground][SCPC 1차예선 방속의 거울]

문제 https://www.codeground.org/practice 문제해결 문제를 보고 바로 시뮬레이션 문제라는 것을 직감했다. 방향만 잘 컨트롤 해준다면 문제없이 풀 수 있다. 더 효율적으로도 짤 수 있었겠지만 경우의 수가 별로 없어서 방햘 전환을 if문 만으로 해결하였다. 코드 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 #include #include #include using namespace std; int map[1001][1001]; b..

[Code Ground][SCPC 예선 - 개구리 뛰기]

문제 https://www.codeground.org/practice 문제해결 처음 고안한 방법으로는 다이나믹 프로그래밍으로 1~N까지 그때그때마다 최소로 점프할 수 있는 횟수를 업데이트해줘서 마지막 목적지까지 구해주는 방식으로 했으나 시간초과로 80점을 받았다... O(N)으로 풀어야 했기에 한번에 반복문만을 사용해야만 한다. 다음위치 > T; for(test_case = 0; test_case > N; for(int i = 1;i> bridge[i]; } cin >> K; int temp = 0; // 현재자리수+K를 저장 즉 최대로 건넜을때 위치임 int location = 0; //위치, 즉 최대로 건널 수 있는 돌다리의 위치를 저장한것(현재 와있는 위치라고 생각하면됨) int sol = 0; /..

[파이썬 웹 크롤링] 네이버 금융 코스피지수 크롤링

파이썬으로 네이버 금융 크롤링 1. 사이트 접속 https://finance.naver.com/sise/sise_index.nhn?code=KPI200 에 접속한 후 일별 시세표를 확인하다. 2. url 구하기 일별 시세 표의 오른쪽 마우스 클릭으로 프레임 소스 코드보기를 클릭한다. 그리고 해당 url에서 앞에 view-source를 제외한 https://finance.naver.com/sise/sise_index_day.nhn?code=KPI200 가 우리가 구하고싶은 표의 url이다. 직접들어가보면 해당표만 있는 것을 볼 수 있다. 여기서 페이지를 이동하면 url뒤에 page=2 이런식으로 표기 되기때문에 https://finance.naver.com/sise/sise_index_day.nhn?cod..

[파이썬 기본 문법-3] sequence 객체 사용하기

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263# sequence types == 리스트,튜플,range,문자열처럼 연속적으로 이어진 자료형# 특정 값이 있는지 확인하기a = [0,10,20,30,40,50,60,70,80,90]print(30 in a) # Trueprint(30 not in a) # Falseprint('P' in 'Hello, Python') #True # 시퀸스 객체 연결하기a = [1,2,3,4,5]b = [6,7,8,9,10]print(a+b) # 두 리스트 연결 # 단, 시퀸스 자료형 중에서 range는 +연산자로 ..

[파이썬 기본 문법-2] 출력 함수 print

123456789# 개행print(1,2,3,sep = '\n') # 여러개의 값을 개행해서 표기 # \n : 개행, \t : 탭 만큼 여러칸을 띄운다. , \\ : \ 문자 자체를 출력할 때# end 사용하기print(1,end = '')print(2,end = '')print(3,end = '')# 123 개행이 자동으로 안된다. end는 print가 끝난뒤 다음에 오는 print함수에 영향을 미침, end의 default는 \n이므로 개행을 안할거면 ''공백으로 만들어야한다.cs

[파이썬기본문법-1] 사칙연산

1234567891011121314151617181920212223242526272829303132333435363738394041# 사칙연산 + - / *# 나눗셈 후 소수점 이하를 버리는 // 연산자print(10//3) # 결과 : 3 #나눗셈 후 나머지를 구하는 연산자 : %print(5%2) # 결과 : 1 #거듭제곱을 구하는 ** 연산자print(2**10) # 결과 : 1024 # 값을 정수로 만들기print(int(3.3)) # 결과 : 3 # 객체의 자료형 알아내기print(type(10)) # 결과 : # 몫과 나머지를 함께 구하기 : divmodprint(divmod(5,2)) # (2,1) 튜플 형태로 나온다.a,b = divmod(5,2) # 변수 두개의 몫과 나머지 저장print..

미세먼지 안녕!(백준 17144번)

문제 https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 알고리즘 풀이 1. 미세먼지를 분산시킬때는 동시에 일어나는 것이기 때문에 배열에 하나하나 접근해서 바꾸다 보면 분산시켜서 더해준 구역을 분산시켜서 동시에 한다는 조건을 만족하지 못한다. 그렇기 때문에 임시로 저장해놓을 배열을 하나 만들어서 분산시키는 것과 분산시킨 구역의 남은 미세먼지 값을 임시 배열에 저장한다. 2. 임시 배열의 값들을 진짜 배열에 복사해준다. 3. 공기청정기는 공기가 지..

치킨 배달(백준 15686번)

문제 https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 이 문제를 처음 봤을 때 그냥 간단한 브루트포스 문제인 줄 알고 풀었다가 시간초과가 계속 나와서 다른 블로그를 보고 서야 풀 수 있었다... 길이를 구하는 것을 처음에는 집,치킨집 좌표를 기억해서 구하는 식으로 했다가 시간초과가 나서 bfs로 했는데 런타임에러가 떠서 결국에는 블로그를 찾아서 풀었다. 알고리즘 설명 1. 집,치킨집의 좌표를 벡터에 저장한다. 2. visi..

컨베이어 벨트 위의 로봇(백준 20055번)

문제 https://www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 문제 설명 문제 설명이 약간 해석하기 어려운데 간단하게 그냥 저 컨베이어 벨트가 현실과 똑같이 움직인다고 생각한다면 쉽다. 로봇은 무조건 올리는 자리에 올라가야하고 내리는 자리에서 내려야한다. 그리고 로봇은 움직일 수 있으면 무조건 움직이여야한다. 로봇이 움직이거나 로봇을 올리면 컨베이어 벨트에 내구도가 -1 된다. 이 내용만 숙지하고 조건에 맞게 풀어 나가면 된다. 알..

728x90