Показать сообщение отдельно

  #120  
Старый 11.06.2010, 16:06
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
С нами: 10139366

Репутация: 1502


По умолчанию

Вот ещё попалось. Найти ошибку в коде, который должен прочитать число из файла как 4 байта по смещению 0x123:
Код:
FILE *f;
fopen_s(&f, szFileName, "r+");
if (f){
  int offset = 0x123;
  fseek(f, offset, SEEK_SET);
  int num;
  fread(&num, 4, 1, f);
  printf("%d\n", num);
  fclose(f);
}
Цитата:
P.S.: да, предлагаю задачку (на чистом C!) - как за любое кол-во проходов определить, что мы находимся в кольцевом списке? Список односвязный. Если честно, я и сам хреново представляю, как это сделать, задачу предложил мой гуру
Известная задачка - запускаем 2 указатаеля, один будет просматривать все записи подряд, второй - через одну. Если они когда-то совпадут, то зациклились, если пройдём до конца и не совпадут, то не зациклились. Работает за O(размер списка) времени и O(1) памяти
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием