Аватар для Temirlan90
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333

Определить количество пораженных мишеней

12.05.2011, 17:48. Показов 4123. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Кликните здесь для просмотра всего текста
Биатлон
(Время: 1 сек. Память: 16 Мб Сложность: 24%)

На Зимних Олимпийских Играх традиционно проводятся соревнования по биатлону. Как известно, этот вид спорта содержит лыжные гонки и стрельбу по мишеням из винтовки. На каждом огневом рубеже расположены 5 мишеней. Каждая из них имеет форму круга радиусом 10 см, а расстояния между центрами соседних мишеней одинаковы и равны 25 см. Центры мишеней при этом расположены на одной горизонтали.

Введем прямоугольную систему координат так, что начало координат расположено в центре самой левой мишени, ось Ox направлена вправо, а ось Oy - вверх. Таким образом, центры мишеней имеют координаты (0, 0), (25, 0), (50, 0), (75, 0) и (100, 0).

Для информационного обеспечения проведения соревнований было решено разработать систему подсчета количества пораженных мишеней. Эта система по точкам, в которые попали пули после выстрелов спортсмена, должна определять количество пораженных мишеней. Мишень считается пораженной, если в нее попала хотя бы одна пуля (при этом, разумеется, если в мишень попали две или больше пуль, то попадание считается только один раз).

На спринтерской гонке на каждом огневом рубеже у спортсмена есть 5 пуль. Вам даны координаты точек, в которые попали пули после выстрелов спортсмена. Определите количество пораженных мишеней.
Входные данные

Входной файл INPUT.TXT содержит ровно пять строк: i-ая из них содержит два целых числа xi и yi - координаты точки, в которую попала пуля после i-ого выстрела спортсмена. Все числа во входном файле не превосходят 1000 по модулю.
Выходные данные

В выходной файл OUTPUT.TXT выведите единственное число – число пораженных мишеней.
INPUT.TXT
0 0
25 0
50 0
75 0
100 0
OUTPUT.TXT
5

INPUT.TXT
0 0
0 0
0 0
75 0
100 0
OUTPUT.TXT
3

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>
using namespace std;
int main() {
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    int x, y, count = 0, t1, t2, t3, t4, t5;
    t1 = t2 = t3 = t4 = t5 = 0;
    for(int i = 0; i < 5; ++i) {
        cin >> x >> y;
        if(abs(x) + abs(y) >= 0 && abs(x) + abs(y) <= 10 && t1 != 1) {
            t1 = 1;
            ++count;
        }
        else if(abs(x) + abs(y) >= 15 && abs(x) + abs(y) <= 35 && t2 != 1) {
            t2 = 1;
            ++count;
        }
        else if(abs(x) + abs(y) >= 40 && abs(x) + abs(y) <= 60 && t3 != 1) {
            t3 = 1;
            ++count;
        }
        else if(abs(x) + abs(y) >= 65 && abs(x) + abs(y) <= 85 && t4 != 1) {
            t4 = 1;
            ++count;
        }
        else if(abs(x) + abs(y) >= 90 && abs(x) + abs(y) <= 110 && t5 != 1) {
            t5 = 1;
            ++count;
        }
    }
    cout << count;  
    return 0;
}
7-й тест проваливает..., дайте контр-пример.

Добавлено через 1 час 42 минуты
контр-пример
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.05.2011, 17:48
Ответы с готовыми решениями:

Биатлон (найти количество пораженных мишеней)
На Зимних Олимпийских Играх традиционно проводятся соревнования по биатлону. Как известно, этот вид спорта содержит лыжные гонки и стрельбу...

Найти вероятность поражения 6 мишеней
Стрелок стреляет по мишеням. Найти вероятность поражения им 6 мишеней при наличии 8 патронов, если вероятность попадания по мишени...

Сколькими способами могут поразить 5 мишеней 3 стрелка
Сколькими способами могут поразить 5 мишеней 3 стрелка (6 стрелков)?

22
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
06.07.2015, 13:40
Студворк — интернет-сервис помощи студентам
Конкретно за краем: 108 байт, для непосвященных смертельно:
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
main()
{   
    int c=0,j=-1, x,y;  
    for(;j++<5;std::cin >> x >> y,x-=j*25,c+=x*x+y*y<101);
    std::cout << c;
}
0
 Аватар для Melvil
58 / 55 / 28
Регистрация: 20.05.2015
Сообщений: 256
06.07.2015, 15:04
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Конкретно за краем: 108 байт, для непосвященных смертельно:
Я вот не очень понял к чему умножение на 25 и изменение цикла for ?

Добавлено через 10 минут
Visual Studio ругается на этот код, хотя проверки он проходит, можете пояснить?
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
06.07.2015, 15:34
Цитата Сообщение от Melvil Посмотреть сообщение
Visual Studio ругается на этот код, хотя проверки он проходит, можете пояснить?
студия будет ругаться. как минимум потребует void перед main. а GNU C++ грызет тока так. она студия вообще дурная. к примеру на scanf ругается. У нее вообще новый вид ошибок появился - unsafe error
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.07.2015, 15:34

Определить количество пятерок, количество четверок, количество троек и количество двоек в массиве оценок
В массиве записаны оценки по иностранному языку каждого из 22 учеников класса.Определить количество пятерок, количество четверок,...

Сколько возможных комбинаций (закрытых/не закрытых мишеней) приводят к двум штрафным кругам
Биатлонист делает 5 выстрелов на рубеже. За каждую не закрытую мишень он получает штрафной круг. Сколько возможных комбинаций (закрытых/не...

Пользователь вводит строку. Определить количество букв (рус eng), количество цифр и количество остальных
в чем проблема не пойму работает на английских буквах на цифрах и остальные символы вроде считает а вот русские не хочет их забивает как...

Определить количество букв, количество цифр и количество остальных символов, присутствующих в строке
Дана строка. Определить количество букв, количество цифр и количество остальных символов, присутствующих в строке. Рекомендации: Для...

Определить количество отрицательных, количество положительных и количество нулей среди введенных чисел
С клавиатуры вводятся N чисел. Составьте программу, которая определяет количество отрицательных, количество положительных и количество...


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

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru