목록2018/01 (4)
Code Run
방법 1. GCC인 경우 builtin 함수를 이용한다. __builtin_clz(k) 함수를 이용하여 leading zero bit의 개수를 구한뒤 32(또는 31)에서 빼준다.GCC-other builtin 링크 방법 2. 아래 코드의 msbPos, msbComki 와 같이 IEEE754의 부동소수점 표기법을 이용하는 방법이다. 지수부에 담겨있는 값이 결국에는 msbIndex임을 이해한다면 여러가지 방법으로 구할 수 있다. IEEE754 부동소수점 표기법 아래 msbPos, msbComki 코드는 msb를 알아보고자 하는 수가 0인 경우 -1023을 반환한다. 필요에 따라 적절히 코드를 수정하여 사용할 필요가 있다. 12345678910111213141516171819202122232425262728..
1. 복사하기 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253/**copy use stlcopy*/#include #include #include #include #include using namespace std; int A[] = {3, 2, 5, 6, 1, 4};int arr[6];vector vec1; template void output(T A, string ment){ puts(ment.c_str()); for(int i=0;ia; vec.push_back(a); } for(i=0;i
[GCC 에서 좀더 빠른 입출력 01] ※ 파일 디스크립터( fd - File Descriptor) : 참고 페이지0 => stdin1 => stdout2 => stderr 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667/**faster IO testhttps://www.acmicpc.net/problem/10989comkiweruse GCC unistd.h - read(fd, buffer, nbyte), write(fd, buffer, nbyte)*/#include #include #include const int LM = 10..
[ 방법 1 : C에서 문자열을 단어로 나누기- naive 구현] 123456789101112131415161718192021222324252627282930313233343536373839404142/**split string C_version 01comkiwer*/#include #include #define LM 100 char str[LM+1]; /// 입력 문자열char word[LM+1][LM+1]; /// 분리된 단어를 저장할 배열int wcnt; /// 분리된 단어의 갯수 int main(){ freopen("in.txt", "r", stdin); int i, j, len; /// gets(str); /// gets() 또는 fgets()로 입력 fgets(str, LM, stdin); /..