본문 바로가기

전체 글31

[백준17298][c++] 오큰수 문제: https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 접근: 엘지 코테 당시, 해당 오큰수문제와 거의 비슷하게 출제되었는데 당시 문제를 풀 때는, 인덱스 뽑아서 2중 반복문으로 돌리다보니 ( 시간복잡도 O(N^2) ) 테스트케이스는 통과를 했지만, 히든 케이스에서 10^6 x 10^6 = 10^12 에서 분명히 시간초과가 발생했을 것이다. 다른 솔루션을 찾아본 결과, 스택으로 (O(N)) 시간초과 없이 해결한 케이스가 있어 이를 참고하였다. https:.. 2023. 4. 16.
[백준1159][c++] 농구 경기 문제 출처: https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net 소스 코드 #include #include using namespace std; int main(){ ios::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); // 알파벳 배열 선언 및 초기화 int count[26]={0,}; // 몇 명 받을건지 int N; cin >> N; // 선수 이름 입력 후 성씨 추출하기 for(int i=0; i> s.. 2023. 4. 14.
[백준10988][c++] 팰린드롬인지 확인하기 문제출처: https://www.acmicpc.net/problem/10988 소스코드: #include #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); // 문자열 입력받기 string str=""; getline(cin, str); cout 2023. 4. 14.
[python][프로그래머스] 크기가 작은 부분 문자열 문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 리뷰: C언어처럼 문자열의 배열 인덱스로 접근하려다 보니 정말 다양한 TypeError가 발생했다. 결국 레퍼런스를 찾아보았고, 리스트 원소 하나하나 접근하는 것이 아닌 슬라이싱으로 더욱 쉽게 작성할 수 있었다. 코드: def solution(t, p): answer = 0 p_len = len(p) t_len = len(t) p=int(p) for i in range(0,t_len.. 2023. 3. 2.