Xcode에서 경쟁 프로를 시작했습니다 (C++)

개요



결론 : macOS에 Xcode를 설치하면 쉽게 C++에서 경쟁 프로를 시작할 수 있습니다!

면접 체험기를 보고 있으면, 나온 로직을 화이트보드에 코딩해 보라, 라고 한다고 한다. 자신의 몸에 언제 내려 갈 수 있도록 대책하려고 생각했습니다.
그러나 현재 하고 있는 iOS의 책을 사용해도 MVC의 구조나 라이브러리의 사용법이 주로, 예를 들면 소트나 탐색 나무등은 평생 만지지 않을 것이다.
어떻게 하면 좋을까 문득 생각해 보면, 아무래도 경기 프로그래밍을 만져 보는 것이 좋은 것 같아. 교과서와 달리 실천적인 것이 좋다.
사이트는 일본어 정보가 많을 것 같은 ATCoder를 선택. 좌절하지 않는 것이 우선은 중요.

언어는 C++를 선택



사용하는 언어는 만진 적은 없지만 C++를 선택.
이것은 경프로 답변의 6할 이상이 C++이기 때문에 응답을 참고하기 쉽다는 이유.
또 C++라고 Xcode가 있으면 끝난다는 것이 크다. (새로운 IDE를 준비하는 것도 억권이고…)

언어는 우선 사용해 봐 모르는 때에 처음으로 조사한다 「지연 평가 공부법」 로 해 본다.
C와 같은 감각으로 사용할 수 있으므로, 뭔가 1언어 하고 있으면 학습 코스트는 낮게 생각한다. (지금의 장소입니다만)

편집기는 Xcode 사용



XCode는 쉽게 BreakPoint를 붙일 수 있으므로 디버깅하는 동안 변수의 값을 확인할 수 있다는 것은 기쁩니다.

참고



1.2.2 Xcode의 설치와 간단한 사용법((C++에서의 프로그래밍 입문)
Xcode와 C++로 경기 프로그래밍할 때의 초기 설정 예

ATCoder용 설정



Command Line Tool 선택

언어로 「C++」를 선택.
main.cpp 와 같은 장소에 input.txt 를 작성.
input.txt를 프로젝트에 추가합니다.

이렇게 하면 input.txt 를 Xcode 에서 직접 편집할 수 있으므로 테스트 데이터의 입력이 편하다.
input.txt를 코드에서 읽을 수 있도록 설정합니다.Edit Scheme 선택

다음은 이전 input.txt가 저장된 디렉토리를 지정합니다.

동작 확인 코드. 제출시는 //input from txt 를 포함해 아래 3행을 삭제할 뿐.

사용하는 코드


  • 코드 부분에만 집중할 수 있도록, 다른 부분은 뭔가로 등록해 두면 좋다고 생각한다.
  • 나는 다음을 Dash 스 니펫에 등록하여 사용하고 있습니다.
  • Dash의 스 니펫 기능을 제대로 사용

  • 라이브러리도 필요에 따라 추가할 필요가 있을 것 같다
  • //  main.cpp
    //  CppTest
    
    #include <iostream>
    #include <fstream>
    #include <vector>
    #include <algorithm>
    using namespace std;
    
    int main(int argc, const char * argv[]) {
    
        // input from txt (提出時にこの箇所は削除すること)
        std::ifstream in("input.txt");
        std::cin.rdbuf(in.rdbuf());
    
        // cinを高速にするためのおまじない
        cin.tie(0);
        ios::sync_with_stdio(false);
    
        /////////////////////
        // Write code below /
        /////////////////////
    
    
        return 0;
    }
    

    좋은 웹페이지 즐겨찾기