Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 3 703

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
Вы не могли бы помочь мне написать эту прогу в паскале?
Заранее благодарен!

Приложение:
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. extern "C" void * memset ( void *, int, size_t );
  6.  
  7. const int MAXN = 200;
  8.  
  9. int e[MAXN][MAXN];
  10. int u[MAXN], pr[MAXN];
  11. int m, n, k, t;
  12.  
  13. int dfs(int v)
  14. {
  15. if (u[v]) return 0;
  16. u[v] = 1;
  17. for (int i = 0; i < m + k - n; ++i)
  18. if (e[v][i])
  19. {
  20. if (pr[i] < 0 || dfs(pr[i]))
  21. {
  22. pr[i] = v;
  23. return 1;
  24. }
  25. }
  26. return 0;
  27. }
  28.  
  29. int main()
  30. {
  31. freopen("c.in", "rt", stdin);
  32. freopen("c.out", "wt", stdout);
  33. cin >> m >> k >> n >> t;
  34. for (int i = 0; i < m+k-n; ++i)
  35. for (int j = 0; j < m+k-n; ++j)
  36. e[i][j] = 1;
  37. for (int i = m; i < m + k - n; ++i)
  38. for (int j = k; j < m + k - n; ++j)
  39. e[i][j] = 0;
  40. for (int i = 0; i < t; ++i)
  41. {
  42. int x, y;
  43. cin >> x >> y;
  44. x--; y--;
  45. y -= m;
  46. e[x][y] = 0;
  47. }
  48. int q;
  49. cin >> q;
  50. for (int i = 0; i < q; ++i)
  51. {
  52. int x;
  53. cin >> x;
  54. x--;
  55. if (x < m)
  56. for (int i = k; i < m + k - n; ++i)
  57. e[x][i] = 0;
  58. else
  59. for (int i = m; i < m + k - n; ++i)
  60. e[i][x-m] = 0;
  61. }
  62. for (int i = 0; i < m + k - n; ++i)
  63. pr[i] = -1;
  64. for (int i = 0; i < m + k - n; ++i)
  65. {
  66. memset(u, 0, sizeof(u));
  67. dfs(i);
  68. }
  69. int f = 1;
  70. for (int i = 0; i < m + k - n; ++i)
  71. f &= pr[i] >= 0;
  72. if (!f)
  73. cout << "NOn";
  74. else
  75. {
  76. cout << "YESn";
  77. for (int i = 0; i < k; ++i)
  78. if (pr[i] >= 0 && pr[i] < m)
  79. cout << pr[i] + 1 << ' ' << i + m + 1 << endl;
  80. }
  81. return 0;
  82. }
  83.  


Черняев Саша Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Черняев Саша (статус: Посетитель)
Вопрос отправлен: 27 января 2010, 19:40
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 1; последнее сообщение — 29 января 2010, 01:05; участников в обсуждении: 1.
Death_Master

Death_Master (статус: Посетитель), 29 января 2010, 01:05 [#1]:

Попробуйте http://c2pas.sourceforge.net/
Или есть ещё аналоги...
Честно говоря лень самому переводить...
Обычно захожу по ночам... (60-70%)
Если нужно что-то написать, то беру оборудованием, деньгими и пивом(при личной встрече)...
P.S. Помогаю и рассказываю бесплатно ^_^.....Nyaaa!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:47
Выполнено за 0.02 сек.