Branch data Line data Source code
1 : : #ifndef FUNC_H 2 : : #define FUNC_H 3 : : 4 : : #include <sys/time.h> 5 : : 6 : 4 : int min(int a, int b) { 7 [ + + ]: 4 : return a < b ? a : b; 8 : : } 9 : : 10 : 17 : int max(int a, int b) { 11 [ + + ]: 17 : return a > b ? a : b; 12 : : } 13 : : 14 : 1 : bool probability(int x, int y) { 15 : 1 : return (rand() % y) <= (x - 1); 16 : : } 17 : : 18 : 7002 : uint64_t myclock() { 19 : : struct timeval tv; 20 : 7002 : gettimeofday(&tv, NULL); 21 : 7002 : return tv.tv_sec * 1000 + tv.tv_usec / 1000; 22 : : } 23 : : 24 : 66 : char* sformat(const char* format, ...) { 25 : : static char text[1024]; 26 : : 27 : : va_list ap; 28 : 66 : va_start(ap, format); 29 : 66 : int len = vsprintf(text, format, ap); 30 : 66 : va_end(ap); 31 : : 32 : : 33 : : /* 34 : : if (len >= (int)sizeof(text)){ 35 : : eprintf("buffer overflow\n"); 36 : : } 37 : : */ 38 : 66 : return text; 39 : : } 40 : : 41 : : #endif