3 / 3 / 0
Регистрация: 05.10.2011
Сообщений: 86
1

Если дана плитка 3х2, как ее можно разделить на 4 ровные части?

18.10.2011, 20:46. Показов 1895. Ответов 9
Метки нет (Все метки)

You are given n*m sized chocolate. Determine is it possible to brake off from chocolate k parts if you are allowed to make one break in straight line between the segments. Input contains three number n, m, k (k not equal to n*m). It is guaranteed that the number of segments in chocolate does not exceed 30000.
Честно говоря, не поняла само условие.
Если дана плитка 3х2, как ее можно разделить на 4 ровные части?

Examples
Input Output
3 2 4 YES
3 2 1 NO
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
int main(){
    int m,n,k;
    cin>>n>>m;
    if((n*m)%(k-1)==0)
        cout<<”YES”;
    else cout<<”NO”;
return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2011, 20:46
Ответы с готовыми решениями:

Можно ли как то исходное значение в ячейке разделить на составные части и работать с ними
Имеется в одной ячейке значение угла вида:590 59'54&quot; (59 градусов и тд). Переводить эти значения...

Дана строка. Необходимо разделить ее на две равные части
Дана строка. Необходимо разделить ее на две равные части (если длина строки — четная, а если длина...

Разделить строку на части, если разделитель - строка
Здравствуйте. Как разделить строку на отдельные части, если разделитель - строка. Разделитель:/*/...

Равны ли части равенства и если да, то как можно доказать
Равны ли части равенства и если да, то как можно доказать ?? A × (B ∩ C) = (A ∩ B) × (A ∩ C)

9
447 / 210 / 21
Регистрация: 07.10.2011
Сообщений: 462
18.10.2011, 21:39 2
Ann Joker, здесь не про 4 части. Вопрос в задаче следующий. Дана плитка шоколада n*m. Можно ли отделить от нее k "долек", если вы можете сделать только один прямолинейный разлом?

От плитки 3*2 можно отделить 4 дольки за 1 раз:
* * | *
* * | *
(* - дольки, | - линия разлома)

А вот отделить от нее 1 дольку нельзя, потому что придется делать два разлома под углом 90 градусов
2
3 / 3 / 0
Регистрация: 05.10.2011
Сообщений: 86
18.10.2011, 21:56  [ТС] 3
ааа, блин, я тормоз..

получается, если число ломтиков делится на ширину или длину шоколад без остатка, то можно.
?
0
447 / 210 / 21
Регистрация: 07.10.2011
Сообщений: 462
18.10.2011, 22:07 4
Ann Joker, там более сложное условие
Понятно, что если длина или ширина плитки делится на количество долек, то их можно отделить. Но, например, том же примере про плитку 3*2 и 4 дольки ни длина, ни ширина не делятся на кол-во долек, и наоборот.
Что касается приведенного вами в первом посте кода, то он работает неправильно
Рассмотрим пример: плитка 3*4, отделить 9 долек (это возможно)
* * * | *
* * * | *
* * * | *
Однако по условию (n*m)%(k-1)==0
(3*4)%(9-1)=12%8=4 !=0, напечатает NO

Кроме того, нет инициализации переменной k. И сомнительна работа условия при k=1 (остаток от деления на 0 будем искать, получается)
0
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.10.2011, 22:12 5
Я думаю так.
((Если k делится нацело на n, и k / n < m) или (если k делится нацело на m, и k / m < n))
0
3 / 3 / 0
Регистрация: 05.10.2011
Сообщений: 86
18.10.2011, 22:33  [ТС] 6
а что если
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <math.h>
using namespace std;
int main(){
    int m,n,k;
    cin>>n>>m;
    if((n*m)-k==n || (n*m)-k==m)
        cout<<"YES";
    else cout<<"NO";
return 0;
}
Добавлено через 11 минут
The chips were placed in each border cage of square board. Can we place exactly k chips? For example if it is 2 x 2 sized board then there is 4 chips or if it is 4 x 4 sized board then there is 20 chips.

можете эту еще объяснить..
0
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.10.2011, 22:36 7
Плитка 3*4. Отломите 3 дольки.
Следуя вашей программе
if((12 - 3 == 3) || (12 - 3 == 4))
false.
0
7 / 7 / 2
Регистрация: 18.10.2011
Сообщений: 40
18.10.2011, 22:47 8
На основе всех примеров в голову пришло такое условие:если количество необходимых долек делится нацело на один из параметров плитки)При этом смотреть, чтобы k<m*n и чтобы частное k и одного из параметров не было больше другого параметра плитки.
0
3 / 3 / 0
Регистрация: 05.10.2011
Сообщений: 86
18.10.2011, 22:49  [ТС] 9
вот точно, это я и хотела выразить!)
спасибо_))
0
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.10.2011, 22:52 10
Цитата Сообщение от Overdoser Посмотреть сообщение
На основе всех примеров в голову пришло такое условие:если количество необходимых долек делится нацело на один из параметров плитки)
Пост #5. Еще необходимо условие о том, что другая сторона обязательно меньше частного. Пример: плитка 2*3 и 9 долек.

Добавлено через 2 минуты
Пардон. Отписывался по первому варианту поста. И тем не менее, я все это написал 5 постов назад
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2011, 22:52
Помогаю со студенческими работами здесь

Можно ли разделить базу, оставив одну табличку в клиентской части
И снова здрасьте... Таблица, которую хотелось бы оставить в клиенте содержит данные security,...

Проверить, можно ли разделить монеты и купюры гонорара на две равные части?
Инопланетяне с планеты Пандора уже много лет исследуют землян. Для этого на Землю внедрено...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru