[C++] ios::sync_with_stdio(0); cin.tie(0);

2025. 3. 5. 17:37·📚 STUDY/📈 알고리즘

알고리즘 강의를 보다가 C++로 갈아타고자 마음을 먹고, C로 풀었던 문제들을 C++로 다시 풀면서 강사님의 코드와 비교해봤다.

 

위의 두 줄이 포함되어있어, 바로 검색해봤다.

한 줄로 설명하자면, "입출력 속도가 빨라지고, 그로 인해 시간 초과로 틀렸던 문제가 맞는 경우가 있어서" 이다.

 

❓ ios::sync_with_stdio(0)

C, C++ 표준 stream의 동기화를 비활성화하는 코드이다.

C++에서도 C언어처럼 printf, scanf를 사용하는 경우가 있었는데, 비활성화 하게되면 이를 사용할 수 없다.

대신, C++ 스타일 코드만 사용해 기존 동기화 과정에서 필요하던 시간이 절약되어, 입출력 속도가 빨라진다.

💥 입/출력으로 cin, cout만 쓰자

 

❓ cin.tie(0)

cin.tie 자체는 cin, cout이 하나로 묶어주는 역할을 한다. 

std::cout << "Enter name:";
std::cin >> name;

 

즉, Enter name: 이 출력된 후, 이름을 입력할 수 있다.

하지만, cin.tie(0) 이나 cin.tie(null)을 추가해주면, Enter name: 이 출력되기 전에 이름을 입력할 수 있다.

따라서, 내부적으로 cin, cout을 묶어주는 과정을 수행하지 않기 때문에 시간이 절약된다고 한다.

💥 프로그램을 실행할 때는 자연스럽지 못할 수 있지만, 알고리즘 문제를 풀 때는 크게 상관없으니 사용하자!

 

❗ tip

scanf, printf가 cin, cout 보다 속도가 빠르다는 것은 알고 있었다.

- 하지만, 위의 ios::sync_with_stdio(0);  cin.tie(0); 두 줄을 추가한 뒤 cin, cout을 사용하면 기존 scanf, printf 속도보다 빨라진다고 한다.

- 입/출력시 개행할 때 endl 대신 '\n'을 사용하면 시간을 더 절약할 수 있다고 한다.

 

저작자표시 (새창열림)

'📚 STUDY > 📈 알고리즘' 카테고리의 다른 글

Merge sort  (0) 2025.05.07
Divide-and-Conquer Algorithm  (0) 2025.04.15
Algorithm & Time Complexity  (0) 2025.04.15
[프언] C에서 C++로 갈아타기  (2) 2025.03.05
Diamond-Square Algorithm  (1) 2025.02.21
'📚 STUDY/📈 알고리즘' 카테고리의 다른 글
  • Divide-and-Conquer Algorithm
  • Algorithm & Time Complexity
  • [프언] C에서 C++로 갈아타기
  • Diamond-Square Algorithm
엄지잉
엄지잉
공부하는거 올림
  • 엄지잉
    엄지잉의 이것저것
    엄지잉
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • 🏫 학교 (2)
        • 👩‍🏫 교직 (1)
        • 🏢 USG (1)
      • 🌱 탐구 (17)
        • 📷 SLAM (7)
        • 💡 연구 (8)
        • 🌐 BOJ (2)
      • 📚 STUDY (47)
        • 🔥 C (32)
        • 📈 알고리즘 (9)
        • 👀 컴퓨터비전 (5)
        • 🔆 UNITY (1)
      • 🏆 자격증 (23)
        • ⚡ 정처기 (17)
        • 🔠 TOEIC (6)
      • 🎈 활동 (4)
        • 🎁 CJ 리모트 인턴십 (2)
        • 😶 기타 (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    모션캡처
    SW 개발
    식별자
    2022년
    실기
    Body Tracking
    SW 설계
    Unity
    azurekinect
    c기초
    컴퓨터비전
    Azure Kinect
    RC
    필기
    정보처리기사
    C++
    알고리즘
    정보시스템 구축관리
    C
    mocopi
    Slam
    정처기
    토익
    BOJ
    opencv
    Remote Internship
    DB 구축
    2021년
    프언 활용
    C언어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
엄지잉
[C++] ios::sync_with_stdio(0); cin.tie(0);
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.