작성
·
887
0
알고리즘 교안 p.9에서
#include<bits/stdc++.h> 를 지원하지 않는 코딩테스트 환경이 있다고 하셨습니다.
예를 들어 삼성전자 코딩테스트에서
pair 나 tuple을 추가하기 위해서
#include<utitlity>
#include<tuple>
을 직접명시할 수 밖에 없을 텐데 이는 어쩔 수 없이 암기해야하는 부분으로 받아드려야 되는지 궁금합니다.
또한, 위에서 언급한 의도와 같이 p.9에서 선생님께서 전달하려는 내용의 핵심이 라이브러리에 속한 함수들을 암기하는 것 뿐만 아니라 #include<OOO>에 적을 라이브러리 명도 암기하라는 것인지 궁금합니다.
답변 1
0
사실 암기할 필요가 없습니다.
어떤 식으로 주어지냐면
pair를 써야 할 "문제"라면 pair를 삼성에서 제공해줍니다.
#include<utitlity>
#include<tuple>
이런식으로 말이죠.
다만 불안할경우 외우라는 말씀을 드린겁니다. pair를 쓰고 싶은데 include를 몰라 막히면 초조할 수도 있으니까요.
삼성코테와 유사한 환경은 다음 링크에서 볼 수 있습니다.
- https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AYJW63G6lQ4DFASv&categoryId=AYJW63G6lQ4DFASv&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=1
이 사이트에서 문제를 푸는게 삼성코테와 유사한 환경에서 풀 수 있다 라고 볼 수 있는데요.
이 사이트의 문제 중 하나는 이렇게 나옵니다. 즉, iostream을 주고 이것만으로도 풀 수 있는 문제죠.
/////////////////////////////////////////////////////////////////////////////////////////////
// 기본 제공코드는 임의 수정해도 관계 없습니다. 단, 입출력 포맷 주의
// 아래 표준 입출력 예제 필요시 참고하세요.
// 표준 입력 예제
// int a;
// float b, c;
// double d, e, f;
// char g;
// char var[256];
// long long AB;
// cin >> a; // int 변수 1개 입력받는 예제
// cin >> b >> c; // float 변수 2개 입력받는 예제
// cin >> d >> e >> f; // double 변수 3개 입력받는 예제
// cin >> g; // char 변수 1개 입력받는 예제
// cin >> var; // 문자열 1개 입력받는 예제
// cin >> AB; // long long 변수 1개 입력받는 예제
/////////////////////////////////////////////////////////////////////////////////////////////
// 표준 출력 예제
// int a = 0;
// float b = 1.0, c = 2.0;
// double d = 3.0, e = 0.0; f = 1.0;
// char g = 'b';
// char var[256] = "ABCDEFG";
// long long AB = 12345678901234567L;
// cout << a; // int 변수 1개 출력하는 예제
// cout << b << " " << c; // float 변수 2개 출력하는 예제
// cout << d << " " << e << " " << f; // double 변수 3개 출력하는 예제
// cout << g; // char 변수 1개 출력하는 예제
// cout << var; // 문자열 1개 출력하는 예제
// cout << AB; // long long 변수 1개 출력하는 예제
/////////////////////////////////////////////////////////////////////////////////////////////
#include<iostream>
using namespace std;
int main(int argc, char** argv)
{
int test_case;
int T;
/*
아래의 freopen 함수는 input.txt 를 read only 형식으로 연 후,
앞으로 표준 입력(키보드) 대신 input.txt 파일로부터 읽어오겠다는 의미의 코드입니다.
//여러분이 작성한 코드를 테스트 할 때, 편의를 위해서 input.txt에 입력을 저장한 후,
freopen 함수를 이용하면 이후 cin 을 수행할 때 표준 입력 대신 파일로부터 입력을 받아올 수 있습니다.
따라서 테스트를 수행할 때에는 아래 주석을 지우고 이 함수를 사용하셔도 좋습니다.
freopen 함수를 사용하기 위해서는 #include <cstdio>, 혹은 #include <stdio.h> 가 필요합니다.
단, 채점을 위해 코드를 제출하실 때에는 반드시 freopen 함수를 지우거나 주석 처리 하셔야 합니다.
*/
//freopen("input.txt", "r", stdin);
cin>>T;
/*
여러 개의 테스트 케이스가 주어지므로, 각각을 처리합니다.
*/
for(test_case = 1; test_case <= T; ++test_case)
{
/////////////////////////////////////////////////////////////////////////////////////////////
/*
이 부분에 여러분의 알고리즘 구현이 들어갑니다.
*/
/////////////////////////////////////////////////////////////////////////////////////////////
}
return 0;//정상종료시 반드시 0을 리턴해야합니다.
}
아하 코드에 기본값으로 #include< > 가 작성되있군요....
감사합니다!