- 1
 
function(&(*(--Iter)++);
                                    Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+154
function(&(*(--Iter)++);
                                    Вот как надо использовать итератор...
+154
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main()
{
    fstream in("z.in", ios::in);
    fstream out("z.out", ios::out);
    string s;
    in >> s;
    in.close();
    vector<size_t> z(s.length());
    z[0] = s.length();
    for (size_t i = 1, l = 0, r = 0, j = 0, k = 0; i < s.length(); (i > r) ? ((s[i + j] == s[j]) && ((j + i) < s.length()) ? ++j : (((z[l = i] = j, r = i + j - 1), j = 0), ++i)) : ((z[i - l] < r - i + 1) ? ((z[i] = z[i - l]), ++i) : (((s[r + k] == s[r - i + k]) && ((k + r) < s.length())) ? ++k : (((z[l = i] = r - i + k, r = r + k - 1), k = 1), ++i))));
    for(size_t i = 1; i < s.length(); ++i)
    {
        out << z[i] << " ";
    }
    out << flush;
    out.close();
    return 0;
}
                                    Z-функция в одну строчку. плод больного воображения и лишнего времени
+154
// Parse strings looking for color tuples [255,255,255]
function getRGB(color) {
  var result;
  if (color && isArray(color) && color.length == 3)
    return color;
  if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
    return [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];
  if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
    return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];
  if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
    return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];
  if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
    return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];
}
                                    
+154
//построение суффиксного массива
vector <int> getarr(string s) 
{
  //s - исходная строка
  //суффиксный массив
  vector <int> arr;
  arr.resize(s.size());
  //массив цветов
  vector <int> col;
  col.resize(s.size());
  //массив для временных данных
  vector <int> buf;
  buf.resize(s.size());
  //массив для карманов сортировки
  vector <int> buck;
  buck.resize(max(L, (int) s.size()));
  //Шаг первый - начальная сортировка
  //мы хотим отсортировать буквы строки
  //посчитаем количество всех букв
  for (int i = 0; i < (int) s.size(); i++) 
    buck[s[i]]++;
  //преобразуем массив так, чтобы каждый элемент указывал на положение в массиве первой данной буквы
  int sum = 0; 
  for (int i = 0; i < L; i++) 
  {
    sum += buck[i];
	buck[i] = sum - buck[i];
  }
  //теперь заполним массив arr: Теперь в нем суффиксы отсортированы по первой букве
  for (int i = 0; i < (int) s.size(); i++) 
    arr[buck[s[i]]++] = i;
  //теперь проставляем цвета: цвет увеличивается на 1 если следующая буква - другая
  col[arr[0]] = 0; 
  for (int i = 1; i < (int) s.size(); i++) 
    col[arr[i]] = col[arr[i-1]] + (s[arr[i]] != s[arr[i-1]]); 
  int cn = col[arr[s.size() - 1]] + 1;
  //Шаг второй - постепенное расширение подстрок
  //в начале цикла отсортированы подстроки длины l, а в конце - длины 2l
  for (int l = 1; l < (int) s.size(); l *= 2) 
  {
    //обнуляем массив buck  и заполняем для сортировки по col
    for (int i = 0; i < (int) s.size(); i++) 
      buck[i] = 0; 
    for (int i = 0; i < (int) s.size(); i++) 
      buck[col[i]]++; sum = 0; 
    for (int i = 0; i < cn; i++) 
      sum += buck[i], buck[i] = sum - buck[i];
    //строим новый массив в buf (не забываем сдвинуть указатель по модулю на l влево), затем копируем его в arr
    for (int i = 0; i < (int) s.size(); i++) 
      buf[buck[col[(arr[i] - l + s.size()) % s.size()]]++]=(arr[i] - l + s.size()) % s.size(); 
    arr = buf;
    //теперь перекрашиваем массив col: заполняем массив buf, увеличиваем цвет на единицу если один из цветов отличается, затем копируем
    buf[arr[0]] = 0; 
    for (int i = 1; i < (int) s.size(); i++) 
      buf[arr[i]] = buf[arr[i - 1]] + (col[arr[i]] != col[arr[i - 1]] || col[(arr[i] + l) % s.size()] != col[(arr[i - 1] + l) % s.size()]); 
    cn = buf[arr[s.size() - 1]] + 1; 
    col = buf;
  }
  //возвращаем результат
  return arr;
}
                                    Это просто жуть
+154
// create a new XML document
/*$doc = new DomDocument('1.0');
$root = $doc->createElement('root');
$root = $doc->appendChild($root);
*/
//Ну вас всех нахрен!
echo('<?xml version="1.0" encoding="utf-8"?>');
echo("<root>");
echo("<tropical>$tropical</tropical>\n");
echo("<castle>$castle</castle>\n");
echo("<city>$city</city>\n");
echo("<forest>$forest</forest>\n");
echo("<architect>$architect</architect>\n");
echo("<rain>$rain</rain>\n");
echo("<ice>$ice</ice>\n");
echo("<lava>$lava</lava>\n");
echo("<space>$space</space>\n");
echo("<virtual>$virtual</virtual>\n");
echo("<money>$money</money>\n");
echo("</root>");
                                    Я ОЧЕНЬ плохой PHP-кодер. Я не знаю, как делать в PHP XML (в .NET другой механизм, а этот я не очень понял), поэтому делаю "в лоб" - при помощи echo.
+154
function openSQLConnection($data)
{
	$db_host = $data["host"];
	$db_user = $data["login"];
	$db_pass = $data["pass"];
	$db_name = $data["db"];
	mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());
	mysql_select_db($db_name) or die(mysql_error()); 
}
                                    Суровый SQL-коннектор, взято из скриптов платежной системы nextpay[ru]
+154
<?php
require_once('MultiAutoload.php');
class Dispatcher {
	private $handle;
	function __construct($event_handle) {
		$this->handle = $event_handle;
	}
	function handleEvent() {
		$name = 'Handler_'.$this->handle;
		if (class_exists($name)) {
			$handler_obj = new $name($this->handle);
			$response = $handler_obj->secureHandler();
			return $response;
		}
		else {
			throw new Exception('Event handling is impossible!');
		}
	}
}
?>
                                    
            Немного экзотики: PHP в стиле Win32! Говно за собой не сразу увидел,
но когда "пришло озарение" было смешно.
        
+154
$src = fopen("0.txt", 'r');
while(!feof($src))
{
        $line[] = fgets($src);
        $line++;
}
                                    Интересно чему в конце будет равно $line? :)
+154
http://vkontakte.ru/
<noscript><meta http-equiv="refresh" content="0; URL=/badbrowser.php"></noscript>
http://vkontakte.ru/badbrowser.php
<script type="text/javascript">
<!--
//window.checkbrowser = true;
if (window.checkbrowser) {
  try {
    if (new XMLHttpRequest()) {
      location.replace('/');
    }
  } catch(e) {
    try {
      if (new ActiveXObject('Msxml2.XMLHTTP')) {
        location.replace('/');
      }
    } catch(e) {}
    try {
      if (new ActiveXObject('Microsoft.XMLHTTP')) {
        location.replace('/');
      }
    } catch(e) {}
  }
}
-->
</script>
                                    Вот так суровые вконтактостроители отправляют на йуг пользователей NoScript.
+154
void CVC6_SampleCodeDlg::OnButtonSetpreset() 
{
	// TODO: Add your control notification handler code here
	CComboBox *pCombobox = (CComboBox *) GetDlgItem(IDC_COMBO_PRESETNAME);
	CString strPresetName;
	GetDlgItem(IDC_EDIT_PRESETNAME)->GetWindowText(strPresetName);
	if(strPresetName != "")
		m_vportsdk.SavePresetPosition(strPresetName, (pCombobox->GetCurSel()+1));
	else{
		GetDlgItem(IDC_COMBO_PRESETNAME)->GetWindowText(strPresetName);
		m_vportsdk.SavePresetPosition(strPresetName, (pCombobox->GetCurSel()+1));
	}
}
                                    
            VPort ActiveX SDK PLUS от Moxa
часть 4