Перейти к содержимому

Фотография

ЗадачиИнтересные задачи, интересные решения, способы реализации


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 101

#22019624
asr

asr
  • Модератор
  • 24 325 сообщений
Тема для интересных задач.
Обсуждение решений и реализаций на разных языках, сравнение, нахождение лучшего.

Сообщение отредактировал asr: 22.08.2012, 12:32:47

  • 0

#61
asr

asr
  • Модератор
  • 24 325 сообщений

по НОД с дробями - если ограничить количество знаков после запятой и поставить условие, чтобы делитель был обязательно целым, то можно применить к дробям понятие НОД (реализовывать не буду :p )
в ином случае - задача бессмысленна

А где вообще можно использовать НОД? Я имею ввиду практически.

Сообщение отредактировал asr: 23.08.2012, 13:50:41

  • 0

#62
Demka_DV

Demka_DV
  • Свой человек
  • 859 сообщений
думаю что НОД можно использовать в архитектуре, станкостроении, всегда, когда необходимо разделить без остатка на равные части разные длины
  • 1

#63
asr

asr
  • Модератор
  • 24 325 сообщений

по плану, имхо - 0
точнее имеет место некорректная постановка задачи - вычислить % от ничего

Это нужно обьяснить тому кренделю, который кучу образований и думает если есть план, значит должен быть процент выполнения.
Спорить с дураками я не люблю, поскольку результат всегда один и тот же: я всегда их посылаю...... :)))
А если дурак-сноб я его посылаю практически сразу ... :))

А прогу надо написать, чтобы не валилась при делении на 0, иначе сноб тыкает грязным пальчиком: "программа не работает!"

Сообщение отредактировал asr: 23.08.2012, 14:01:55

  • 0

#64
Gonzo

Gonzo
  • Свой человек
  • 565 сообщений

Это нужно обьяснить тому кренделю

О каких кренделях идёт речь? :)


А прогу надо написать, чтобы не валилась при делении на 0

А прогу писать рановато пока, задачи для рассуждения... EDivByZero я для прикола приплёл, даже смайлик поставил...

Сообщение отредактировал Gonzo: 23.08.2012, 14:12:27

  • 0

#65
topcraze

topcraze
  • В доску свой
  • 2 009 сообщений

А где вообще можно использовать НОД? Я имею ввиду практически.

работа с большими целыми в криптографии

И будет чёрти что...

будет
ну не в первОй же черти что в постановке видеть? :D

:cry:

ы :(

А прогу надо написать, чтобы не валилась при делении на 0, иначе сноб тыкает грязным пальчиком: "программа не работает!"

а если просто тупо не давать 0 в поле плана ввести
ну или как там у вас оно устроено?

зы: чей-то столько опечаток у меня

Сообщение отредактировал topcraze: 23.08.2012, 14:16:23

  • 1

#66
Demka_DV

Demka_DV
  • Свой человек
  • 859 сообщений
у меня как-то была задачка по подбору параметров, примерно с такими условиями:

1. n-количество слагаемых (a,b,c,d,e,f) максимум оставил на 6-ти
2. S-сумма слагаемых - искомая величина
3. (a,b,c,d,e,f) - величины получаемые умножением чисел zn*Tn..
4. zn-число с двумя знакопеременными после запятой (задается диапазон изменения)
5. Tn-число с одной знакопеременной после запятой (задается диапазон изменения)
6. in,jn-шаг итерации
в итоге имеем:
S=(z1+in)*(T1+jn)+...+(z6+in)*(T6+jn)
задача: необходимо выбрать все величины удовлетворяющие требованию S=const

так вот, при решении этой задачи я использовал самый простой метод вложенных циклов, может кто подскажет как можно решать такую задачу при n>6, уж больно долго напрягается процессор при уровне вложенности более 6-ти.
  • 0

#67
Gonzo

Gonzo
  • Свой человек
  • 565 сообщений


И будет чёрти что...

будет
ну не в первОй же черти что в постановке видеть? :D

К сожалению да. Я как вспомню долгие 3 года работы с бух-бухами и финиками, так аж печаль наваливается...


:cry:

ы :(

Вот так и живем :laugh:
  • 0

#68
smug

smug
  • Свой человек
  • 513 сообщений

В БД что ли?

попробую софрмулировать задачу
поступает n-кол-во списков с n-элементами
из них формируеться общий список путем перемножения количества элементов в каждом списке
в этом общем списке и надо расположить все списки как показано на примере в файле.
список можете и массивом заменить или чем то подобным.
  • 0

#69
asr

asr
  • Модератор
  • 24 325 сообщений

а если просто тупо не давать 0 в поле плана ввести
ну или как там у вас оно устроено?

Не.... не пойдет... там планы даже отрицательные есть.
  • 0

#70
topcraze

topcraze
  • В доску свой
  • 2 009 сообщений


а если просто тупо не давать 0 в поле плана ввести
ну или как там у вас оно устроено?

Не.... не пойдет... там планы даже отрицательные есть.

а кэтч поставить на это исключение?
али вовсе не делить ничего?
если ноль, то и итог - 0, что там рассчитывать-то? :D
  • 0

#71
smug

smug
  • Свой человек
  • 513 сообщений
все излишки перенести в графу незапланированные доходы ;)
  • 0

#72
itty

itty
  • Гость
  • 9 сообщений


В БД что ли?

попробую софрмулировать задачу
поступает n-кол-во списков с n-элементами
из них формируеться общий список путем перемножения количества элементов в каждом списке
в этом общем списке и надо расположить все списки как показано на примере в файле.
список можете и массивом заменить или чем то подобным.

http://ideone.com/rhq1D
  • 0

#73
smug

smug
  • Свой человек
  • 513 сообщений

http://ideone.com/rhq1D

круто и задачу сообразили очень быстро
вот тока в питоне я 0 можно словами алгоритм расписать?
я делал на жаве основной принцип моего кода был при проходе по общему списку я делал деление по модулю ну и в зависимости от результата делал действия.
  • 0

#74
itty

itty
  • Гость
  • 9 сообщений

вот тока в питоне я 0 можно словами алгоритм расписать?

ниже. сильнее не могу

поступает n-кол-во списков с n-элементами

def zipper(*xs):
....
	return loop([[x] for x in xs[0]], *xs[1:])

из них формируеться общий список путем перемножения количества элементов в каждом списке

def loop(result, *xs):
	return loop([y + [x] for y in result for x in xs[0]], *xs[1:]) if xs else result

в этом общем списке и надо расположить все списки как показано на примере в файле.

def show(xs):
	curr, curr_len = [None] * len(xs[0]), len(xs[0])
	for ex in xs:
		for m in xrange(0, curr_len):
			print (ex[m] if ex[m] != curr[m] else ''), '\t',
		curr = ex
		print
	print "Len = ", len(xs)

я делал на жаве основной принцип моего кода был при проходе по общему списку я делал деление по модулю ну и в зависимости от результата делал действия.

можно и по модулю
http://ideone.com/tsS0L
  • 0

#75
smug

smug
  • Свой человек
  • 513 сообщений
кстати это не надуманная задача это нужно было чтобы строить хтмл таблицу с ячейками объединеными по вертикали.

то itty усовершенствуйте код так чтобы каждая строка была заключена в тег <tr></tr> и каждый элемент в тег <td></td> и соответсвующий rowspan проставьте.
хочу глянуть на получившуюся таблицу, а то чета так не разберусь)
просто меня стремает в коде вставление пустой строки.

зы питон прямо заинтриговал надо хелло ворлд написать на нем)

Сообщение отредактировал smug: 24.08.2012, 09:45:30

  • 0

#76
asr

asr
  • Модератор
  • 24 325 сообщений

я делал на жаве основной принцип моего кода был при проходе по общему списку я делал деление по модулю ну и в зависимости от результата делал действия.

Покажите.
Не стесняйтесь.
  • 0

#77
smug

smug
  • Свой человек
  • 513 сообщений

	public static void main(String[] args) {

		// TODO code application logic here

		List<List<String>> lls = new ArrayList<List<String>>();

		List<String> ls1 = new ArrayList<String>();

		List<String> ls2 = new ArrayList<String>();

		List<String> ls3 = new ArrayList<String>();

		ls1.add("asd");ls1.add("sdfds");ls1.add("asdf");

		ls2.add("123");ls2.add("6765");ls2.add("333");ls2.add("777");

		ls3.add("g");ls3.add("gsd");

		lls.add(ls1);lls.add(ls2);lls.add(ls3);

		task(lls);

	  

	}

	private static void task(List<List<String>> lls){

		int rowCount = 1;

		for(List<String> ls:lls){

			 rowCount*=ls.size();

		}

		StringBuilder sbt = new StringBuilder();

		sbt.append("<table border=\"1\"><tbody>");

		for (int i = 0; i < rowCount; i++) {

		  

			sbt.append("<tr>");

			int lrc = rowCount;

			for (List<String> ls : lls) {

				int s = ls.size();

				int st = lrc / s;

				int aliquot = i % st;

				if (aliquot == 0) {

					int index =(i * s /lrc) % s;

					String rowspan = " rowspan = \"" + st + "\"";

					sbt.append("<td").append(rowspan).append(">").append(ls.get(index)).append("</td>");

				}

				lrc = st;

			}

			sbt.append("</tr>");		  

		}	  

		sbt.append("</tbody></table>");	  

		System.out.println(sbt.toString());

	}


  • 0

#78
itty

itty
  • Гость
  • 9 сообщений

то itty усовершенствуйте код так чтобы каждая строка была заключена в тег <tr></tr> и каждый элемент в тег <td></td> и соответсвующий rowspan проставьте.


http://ideone.com/akSX1
  • 0

#79
itty

itty
  • Гость
  • 9 сообщений
На самом деле

поступает n-кол-во списков с n-элементами
из них формируеться общий список путем перемножения количества элементов в каждом списке

и

.... нужно было чтобы строить хтмл таблицу с ячейками объединеными по вертикали.

это две совершенно разные задачи, которыее решаются соотвесвенно по разному.
Корректное решение построения в HTML таблицу ниже

http://ideone.com/bI4Bp
  • 0

#80
smug

smug
  • Свой человек
  • 513 сообщений

http://ideone.com/bI4Bp

так ведь предыдущее ваше решение справляется с этим ,на сколько эффективно я не знаю пусть питонщики скажут)

Сообщение отредактировал smug: 24.08.2012, 17:02:34

  • 0


Количество пользователей, читающих эту тему: 1

пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.