본문 바로가기

Algorithm

[Algorithm] 자주 사용되는 입출력 루틴

반응형

1. 테스트 케이스의 개수가 입력 첫 번째 줄에 주어지는 경우

int main(){
    int t, a, b;
    cin>>t;

    while(t--){
        cin>>a>>b;
        cout<<a + b<<endl;
    }
}

 

2. 여러 테스트 케이스가 주어지며 입력의 끝 부분에 특정한 값(보통 0)이 주어지는 경우

int main(){
    int a, b;
    // 두 정수가 모두 0이면 멈춤
    while(cin>>a>>b, a || b){
        cout<<a + b<<endl;
    }
}

 

3. 여러 테스트 케이스가 주어지며 입력의 끝 부분에 EOF 시그널이 주어지는 경우

int main(){
    int a, b;

    while(1){
        cin>>a>>b;
        if(cin.eof()) break;
        cout<<a + b<<endl;
    }

    return 0;
}

cin.eof(): cin으로 입력받은 값이 없으면 true, 그렇지 않으면 false 반환

 

Reference

  • 스티븐 할림, 펠릭스 할림. (2017). 알고리즘 트레이닝(p27-28). 김진현. 인사이트.
반응형