Форум программистов, компьютерный форум CyberForum.ru

Найдите контрпример - C++

Восстановить пароль Регистрация
 
AnDrew_LP
160 / 162 / 9
Регистрация: 29.05.2010
Сообщений: 435
10.02.2011, 17:26     Найдите контрпример #1
вот задача http://www.olymp.vinnica.ua/index_ua.php?lng=ua&cid=279
вот моя программа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include<iostream>
#include<fstream>
#define input "cell.dat"
using namespace std;
long ramka(long a)
{
    long i=1;
 while(i*i<a)
  i=i+2;
 return i;
}
bool step(long* h,long* a,long* r,long* l,short k)
{
  for(long i=1;i<*r;i++)
      if(*h==*a) return true;
     else {*l=*l+k;(*h)--;};
 return false;
}
int main()
{
 long a;   
 ifstream file_i(input);
 file_i>>a;
 long r=ramka(a);
 long x=0;
 for(long i=1;i*i<a;i=i+2)
  x++;
  long y=-x;
  long h=r*r;
 if(step(&h,&a,&r,&x,-1)) goto lab;
  if(step(&h,&a,&r,&y,1))  goto lab;
   if(step(&h,&a,&r,&x,1))  goto lab;
    if(step(&h,&a,&r,&y,-1)) goto lab;
  lab:
 cout<<x<<' '<<y<<"\n";
 return 0;
}
Из тестов проходит только один.
В чем может быть ошибка?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2011, 17:26     Найдите контрпример
Посмотрите здесь:

Найдите ошибку C++
C++ Найдите ошибку!
C++ Найдите ошибку
C++ Найдите ошибку
C++ Найдите ошибку
Найдите ошибки C++
C++ Найдите ошибки
Среди введенных четных чисел найдите максимум (М1), также найдите максимум (М2) среди нечетных чисел C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 21:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru