|
|
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2014, 23:43 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
scf Код: plaintext 1. 2. 3. Приведите лучше полный пример, на любом удобном языке :) http://ideone.com/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2014, 23:57 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Васу Уткинна любом удобном языке Код: python 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 08:54 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
scf, давай max(a, b, c), хвастун. P.S. Разумеется с оптимизацией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 13:48 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
maytonдавай max(a, b, c) Код: c# 1. 2. Что там внутри - не колышет. mayton с оптимизацией. Код: c# 1. Распараллеливаем - оптимизация же! PS: C#, LINQ. PPS: знаю, что не оптимально, на правах шутки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 15:15 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
petalvik, я вижу что мой голос никто не хочет слышать. А в таком кейсе ничего не изменится? Код: javascript 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 15:38 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
scf Код: plaintext 1. 2. 3. Тут вобщем-то фейл. Не знаю как и где он тестировался но на Java не взлетает. С обоими вариантами ">>" signed/unsigned не взлетает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 16:22 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
scf Код: plaintext 1. 2. 3. Хрень это какая-то: если значения 32-битные, то при четном значении (b - a) всегда mask = 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 16:30 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
FishHookВасу Уткинна любом удобном языке Код: python 1. 2. Имелось ввиду, чтобы не гадать какой язык и какие типы, а можно было кликнуть и сразу увидеть результат: http://ideone.com/6e17FL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2014, 16:32 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
maytonдавай max(a, b, c), хвастун. max(a, b, c) = max(a, max(b, c)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 04:51 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Dima Tscf Код: plaintext 1. 2. 3. Хрень это какая-то: если значения 32-битные, то при четном значении (b - a) всегда mask = 0 и мы помним что бывает при знаковом сдвиге вправо. Марк рано похвалил товарища. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 10:06 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
SashaMercury, хотя тут я не до конца прав(с точки зрения причинно-следственных связей). Тем не менее, формула выше не должна работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 10:12 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Читаю комментарии... думаю, может это все-таки я идиот, а не все остальные? http://ideone.com/6W0kWO А оказалось, что все-таки я не идиот. Стадное чувство - страшная штука. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 10:18 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
SashaMercuryи мы помним что бывает при знаковом сдвиге вправо. Точно, опять забыл что он знаковый )) Извиняюсь, неправ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 10:25 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
SashaMercurySashaMercury, хотя тут я не до конца прав(с точки зрения причинно-следственных связей). Тем не менее, формула выше не должна работать Не должна, а работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2014, 11:13 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
scfЧитаю комментарии... думаю, может это все-таки я идиот, а не все остальные? http://ideone.com/6W0kWO А оказалось, что все-таки я не идиот. Стадное чувство - страшная штука. не надо ляля. Эту строчку Код: plaintext 1. я только сейчас увидел, и что вы подразумевали сортировку до меня, и до других не дошло. Противопоставления по типу либо я идиот либо все остальные делайте в яслях, пожалуйста ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 11:15 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
SashaMercury Хрень это какая-то: если значения 32-битные, то при четном значении (b - a) всегда mask = 0 и мы помним что бывает при знаковом сдвиге вправо. Марк рано похвалил товарища.[/quot] Ну по стандарту результат сдвига вправо отрицательного числа зависит от реализации. Может быть и беззнаковым. The value of E1 >> E2 is E1 right-shifted E2 bit positions. If E1 has an unsigned type or if E1 has a signed type and a non-negative value, the value of the result is the integral part of the quotient of E1/2 E2 . If E1 has a signed type and a negative value, the resulting value is implementation-defined. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 13:55 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
BarloneSashaMercuryDima TХрень это какая-то: если значения 32-битные, то при четном значении (b - a) всегда mask = 0 и мы помним что бывает при знаковом сдвиге вправо. Марк рано похвалил товарища. Ну по стандарту результат сдвига вправо отрицательного числа зависит от реализации. Может быть и беззнаковым. The value of E1 >> E2 is E1 right-shifted E2 bit positions. If E1 has an unsigned type or if E1 has a signed type and a non-negative value, the value of the result is the integral part of the quotient of E1/2 E2 . If E1 has a signed type and a negative value, the resulting value is implementation-defined. Т.е. исходя из "If E1 has a signed type and a negative value, the resulting value is implementation-defined.", приведенный выше пример будет работать implementation-defined, т.е. где-то правильно, а где то нет? scfЧитаю комментарии... думаю, может это все-таки я идиот, а не все остальные? http://ideone.com/6W0kWO А оказалось, что все-таки я не идиот. Стадное чувство - страшная штука. авторint A = 1; int B; B = A << -3; // undefined behavior B = A << 100; // undefined behavior B = -1 << 5; // undefined behavior B = -1 >> 5; // unspecified behavior ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 16:19 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Реализация для 32-битных знаковых Код: c# 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 18:00 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Правда тут веселье будет на равных числах )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 18:28 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Для JavaScript задачу гораздо проще решить, чем для C# Код: javascript 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 18:49 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
зачётная формула я так понимаю тут дело в производительности (особенно,наверное, на видеокартах) - штраф за переходы не идёт тестил на i5 в fpc, процентов на 20 быстрее чем классическая перестановка со сравнением ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 20:38 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)зачётная формула я так понимаю тут дело в производительности (особенно,наверное, на видеокартах) - штраф за переходы не идёт тестил на i5 в fpc, процентов на 20 быстрее чем классическая перестановка со сравнением Куда "не идёт" "штраф за переходы" "на видеокартах"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2014, 23:38 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
JeStoneРеализация для 32-битных знаковых Код: c# 1. 2. 3. 4. 5. 6. Вот так вот можно решить проблему одинаковых чисел. Код: c# 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2014, 08:05 |
|
||
|
Кто там искал max(a, b) без условных выражений?
|
|||
|---|---|---|---|
|
#18+
Вася Уткин, современные процы пытаются просчитать заранее куда пойдёт ваш код, если он ошибается - "штраф" (время больше, в видеокартах ещё хуже с условными переходами) в этом коде условных переходов нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2014, 19:11 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38832229&tid=1341138]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
148ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 458ms |

| 0 / 0 |
