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

Охотник - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Последовательность - 2 http://www.cyberforum.ru/cpp-beginners/thread297719.html
Последовательность - 2 (Время: 1 сек. Память: 16 Мб) Вася написал на доске n целых чисел ai и ушел. Пришел Петя и, увидев Васину последовательность, решил ее немного изменить. Для этого он решил, что может стирать с доски лишь те числа, у которых имеются слева и справа элементы, превосходящие их. Формально, Петя может стереть число ak, если существуют значения ai и aj такие, что ai > ak и aj...
C++ Создание класса с перегрузкой операторов конструктор и деструктор Создать класс времени (Time) содержащий закрытую переменную-член хранящую целое значение времени интервала в секундах. Интерфейс класса образуют функции-члены для доступа и изменения значения времени: GetHour(),GetMinute(), GetSecond(), SetHour(const int), SetMinute(const int), SetSecond(const int). Для вывода значения объекта в формате «чч:мм:СС» определить функцию show(). Добавить в созданный... http://www.cyberforum.ru/cpp-beginners/thread297718.html
C++ Проверьте!Даны вещественные массивы A[5][6], B[6]. Определить значения вещественного массива C[6] по правилу...
Прошу о помощи! Проверьте задачку! Надеюсь что хоть часть будет верно написано (я ведь совсем не шарю в этой теме) _______________________________________________________________________________ Даны вещественные массивы A, B. Определить значения вещественного массива C по правилу: C=сумме j-го столбца массива A при B>0 C=0 при B=0 C=A+A при B<0 Значение переменной i изменяется от 0 до 5....
C++ В строке имеется одна точка с запятой (;). Подсчитать количество символов до точки с запятой и после нее.
В строке имеется одна точка с запятой ( ; ). Подсчитать количество символов до точки с запятой и после нее.
C++ Дана строка. Определить, сколько раз входит в нее группа букв abc http://www.cyberforum.ru/cpp-beginners/thread297709.html
Дана строка. Определить, сколько раз входит в нее группа букв abc.
C++ error lnk 2019 здраствуйте! решил заняться win api и mfc, открываю книгу "Visual C++. Разработка Windows-приложений с помощью MFC и API-функций" пишу первый листинг. #include "stdafx.h" #include "firstWin.h" //#include <Windows.h> LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); BOOL InitApplication(HINSTANCE hInstance); BOOL InitInstance(HINSTANCE hInstance, int... подробнее

Показать сообщение отдельно
Temirlan90
 Аватар для Temirlan90
131 / 131 / 8
Регистрация: 30.09.2010
Сообщений: 333
17.05.2011, 15:09     Охотник
Охотник
(Время: 1 сек. Память: 16 Мб)

Сезон охоты очень не долог, и поэтому оставшуюся часть года заядлые охотники развлекают себя тем, что стреляют по мишеням в тире. Тир представляет собой плоскость, на которой расставлены мишени. Размерами мишеней можно пренебречь и считать их точками с координатами (x, y). Также известно, что мишени сделаны из картона, поэтому за один выстрел можно поразить сразу все мишени, стоящие на линии выстрела. В начале координат стоит охотник и у него остался последний патрон. Охотник хочет использовать его эффективно – то есть за один выстрел поразить как можно больше целей. Помогите ему в этом.
Входные данные

В первой строке входного файла INPUT.TXT находится натуральное число N (N <= 100) – количество мишеней в тире. Далее следует N строк – описание мишеней. В (i+1)-й строке находится два целых числа x и y (-100 <= x, y <= 100) – координаты i-й мишени. Не существует двух мишеней, стоящих в одной точке, и никакая мишень не стоит в начале координат.
Выходные данные

В выходной файл OUTPUT.TXT выведите максимальное количество мишеней, которое может подстрелить охотник за один выстрел.
Примеры
INPUT.TXT
1
1 1
OUTPUT.TXT
1
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
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    int arr[202][2], n, k = 1;
    cin >> n;
    for(int i = 0; i < n; ++i) {
        cin >> arr[i][0] >> arr[i][1];
    }
    for(int i = 0; i < n - 1; ++i) {
        int x1, x2, y1, y2;
        x1 = arr[i][0];
        x2 = arr[i + 1][0];
        y1 = arr[i][1];
        y2 = arr[i + 1][1];
        if ((x1 * x2 > 0) || (y1 * y2 > 0)) {
            if (x1 != 0 && x2 != 0) {
                if (y1 / x1 == y2 / x2)
                    k++;    
            }
            else if (y1 != 0 && y2 != 0) {
                if (x1 / y1 == x2 / y2)
                    k++;
            }
        }
    }
    cout << k;
    return 0;
}
9 тест проваливает, контр аргумент
4
2 2
4 4
-2 -2
-4 -4
выдает 3 а должен 2
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru