본문 바로가기

728x90

분류 전체보기

[백준] 11719번 : 그대로 출력하기 2 - C/C++ 문제가 간단하다.설명도 엄청 간결하다. 이 문제를 해결하기 위해서 쓰인 개념은getline()이다. getline() 함수를 사용하기 위해서는 string 라이브러리를 사용해야 한다.공백의 문자열이 주어질 수도 있어서 while 문의 조건식으로 getline() 함수를 사용하자.string str;while(getline(cin,str)){ cout  이렇게 코드를 작성하면 된다.근데 입력이 없다면 종료가 되어야하는데,내가 작성한 코드는 control(^)+c 를 눌러야 종료가 된다.이런식으로 작성해서 제출한 코드가 수두룩빽빽인데,다 맞았다고 하니까 이번에도 스리슬쩍.. 내가 처음에 썼던 getline() 함수는 아래와 같다.getline(cin, str);cout 이렇게 되어버리면 공백을 포함해서.. 더보기
[백준] 2839번 : 설탕 배달 - C/C++ 문제 풀이 순서는 다음과 같다.1. n 입력 받기2. 합리적으로 무게 나누기 필자는 말을 잘 못하기 때문에.. 이정도로 정리하겠다. 최소 개수의 설탕 봉지가 필요한 것이기 때문에3킬로그램 짜리와 5킬로그램 짜리 중에서 우리는 "5"를 적극 활용하도록 하자. 만약 입력한 수 n이 15라면, 3킬로그램 짜리를 5개, 5킬로그램 0개 가 필요하므로 총 5개가 필요하다.하지만 5킬로그램만 사용하게 된다면 3킬로그램 짜리 0개, 5킬로그램 3개가 필요하다.그러니 5킬로그램을 필터링에 걸리도록 작성해주자. if(n%5==0){ cnt += n/5; cout  그럼 3킬로그램짜리는 어떻게 처리할까?5로 나누어 떨어지지 않을 때 3씩 빼주면서 처리해주면 된다.n -= 3;cnt++; 우리는 설탕 봉지의 개수를 출력.. 더보기
[Ubuntu/우분투] 맥북에서 22.04 LTS 설치하기 - MacOS 현재 Ubuntu 공식 홈페이지에서 다운로드 가능한 버전은 24.04 버전이다.찾아보면 있긴하다. 눈에 바로 안 보여서 그렇지..필자는 22.04 LTS가 필요하기에 22.04 버전을 설치하고자 한다. Ubuntu는 Mac과 Windows 설치 파일이 다르다.필자는 맥북에 설치하고자 한다.아무리 찾아도 공식 페이지에서는 설치할 수 있는 버전이 24.04 LTS뿐이었다.같이 스터디하는 분들께 여쭤보니, 설치할 수 있는 파일을 주셨다. 아래의 링크를 누르면 바로 설치가 된다. (설치시간 약 5분)https://cdimage.ubuntu.com/releases/22.04.5/release/ubuntu-22.04.5-live-server-arm64.iso 설치가 될 동안 디스크 이미지(.iso)를 다운받자.ht.. 더보기
[운영체제][정보처리기사] 인터페이스 구현 인터페이스 시스템서로 다른 시스템이나 장치 간에 정보나 신호를 주고받을 수 있게 돕는 시스템다양한 시스템과 장치 간의 호환성을 보장하며, 효율적인 데이터 교환을 가능하게 함인터페이스 시스템 구성구성설명송신 시스템연계할 데이터를 생성하여 인터페이스 테이블 또는 파일 형태로 송신하는 시스템수신 시스템수신한 데이터를 데이터 형식에 맞게 저장하고 활용하는 시스템중계 서버송신 시스템과 수신 시스템 사이에서 데이터를 송수신하며 시스템 상태를 모니터링하는 역할  인터페이스 설계서 구성인터페이스 목록: 연계 업무와 연계에 참여하는 송수신 시스템의 저옵, 연계 방식과 통신 유형 등에 대한 정보를 포함한다. 인터페이스 정의서: 데이터 송신 시스템과 수신 시스템 간의 속성, 제약조건 등을 상세히 기술한다. 인터페이스 검증인.. 더보기
[백준] 1292번 : 쉽게 푸는 문제 - C/C++ 문제 자체는 특정 규칙을 따르는 수열을 생성한 뒤, 주어진 구간 합을 구하는 문제이다.1,2,2,3,3,3,4,4,4,4,5,5,...i라는 수가 i번 반복된다는 규칙을 가진다. A,B 입력받고, 그에 해당하는 구간합 구하기구간합 [a,b]는 sum += ary[i] 로 쉽게 구할 수 있다.for(int i = a; i  문제에서 제약조건을  정수 A, B(1 ≤ A ≤ B ≤ 1,000) 이렇게 걸어두었기 때문에const로 NMAX를 선언하자.const int NMAX = 1001;1000으로 안 하고 왜 1001로 하나요?--> 상관은 없다. (반복문 돌릴때 등호 쓰기 싫어서) k는 현재 배열의 인덱스이다.1로 초기화했었다.for(int i = 0; i 1000){ break; .. 더보기
[백준] 11660번 : 구간 합 구하기 5 - C/C++ 지난번에 풀었던 문제와 비슷하다.누적합(prefix sum)을 이용하자. 입력 받은 2차원 배열을 저장할 공간과 누적합을 저장할 dp 테이블을 미리 선언해주자.int sum[1025][1025], dp[1025][1025]; N과 M을 입력 받았다면 dp를 처리하자.for(int i=1; i> sum[i][j]; dp[i][j] = dp[i-1][j] + dp[i][j-1] - dp[i-1][j-1] + sum[i][j]; }} 왜 dp를 저렇게 처리하나요?https://binaryroot.tistory.com/17 [자료구조] 구간 합구간 합은 합 배열이라는 것을 이용하여 시간 복잡도를 줄이는 알고리즘이다.코딩 테스트에서는 사용 빈도가 높다고 한다. 핵심 이론구간 합 알고리즘을 활용하.. 더보기
[데커톡3] 프로그래머스 제3회 데브코스 커리어 TALK 후기 2025년 3월 7일 금요일 15시에 열린 데커톡에 참여했다. 온라인/오프라인 동시에 진행한다고 했지만,현장에서 듣는 것이 좋지 않을까하는 마음에 신청했다. 신청 사유와 궁금한 점, 그리고 관심있는 분야 등을 선택했던 것 같다.지원서(?)를 작성하고 기다렸다.오프라인은 총 60명을 선발한다고 했다.되면 좋은 거고 안 되면 아쉬운거지.. 했는데행사 전날에 다음과 같이 문자가 한 통 날라왔다.내가 60명 중에 한 명이라니, 좋았다.오프라인 신청자가 많아서 일부만 참여할 수 있었다고 문자에 포함되어 있었다. 위치는 강남역 내부와 연결되어 있어서 쉽게 찾을 수 있었다.타포린백이랑 스티커, 볼펜 간단한 다과도 오프라인 당첨자에 한해서 받을 수 있었다.경품 응모권도 주셨는데 나는 꽝! 다음을 노려보자.  서론이 길.. 더보기
[백준] 11659번 : 구간 합 구하기 4 - C/C++ 문제 풀이 순서는 아래와 같다.1. 데이터의 개수 N과 질의 개수 M 입력2. 구간 합을 구할 대상 배열 입력3. 구간 i,j 입력4. 출력 이전 글에 구간 합에 대한 내용을 정리했으니참고하길 바란다.https://binaryroot.tistory.com/17 [자료구조] 구간 합구간 합은 합 배열이라는 것을 이용하여 시간 복잡도를 줄이는 알고리즘이다.코딩 테스트에서는 사용 빈도가 높다고 한다. 핵심 이론구간 합 알고리즘을 활용하려면 먼저 합 배열을 구해야 한binaryroot.tistory.com 글을 확인했다면, 풀이를 시작해보자.  N과 M 입력int n,m;cin >> n >> m; 배열은 100000를 넘을 수 없으니const로 미리 선언해주기const int NMAX = 100020;int a.. 더보기

728x90