История изменений
Исправление AnonymUser, (текущая версия) :
И казалось бы, питонщик уходит в отрыв, но тут подоспел мой код:
/*Поиск всех путей на графе. Переписан из кода PHP*/
#include <stdio.h>
#include <string.h>
static int array_search (const char *ar, char el) {
int i = 0;
while (ar[i] != '\0') {
if (ar[i] == el) return i;
i++;
}
return -1;
}
int main() {
int key;
char a[] = "bcdz";
char b[] = "defz";
char c[] = "defz";
char d[] = "efz";
char e[] = "fz";
char f[] = "ghjz";
char g[] = "hijz";
char h[] = "ijkz";
char i[] = "jklz";
char j[] = "kmz";
char k[] = "lnoz";
char l[] = "mz";
char m[] = "noz";
char n[] = "oz";
char o[] = "pz";
char p[] = "qz";
char q[] = "rz";
char r[] = "sz";
char s[] = "tuz";
char t[] = "uvz";
char u[] = "vwz";
char v[] = "wz";
char w[] = "xyz";
char x[] = "yz";
char y[] = "z";
char z[] = "";
char x2[26] = "abdefghijklmnopqrstuvwxyz";
char z2;
int j2 = strlen(x2)-1;
int last_point = 'z';
int i2 = 0;
char *ar;
int x2_len = 0;
//Печать 1-го
for (i2=0; x2[i2] != '\0'; i2++)
printf("%c", x2[i2]);
printf("\n\r");
int ppp = 1;
while ( j2 != 0 )
{
if (x2[j2-1] =='a')
ar = a;
if (x2[j2-1] =='b')
ar = b;
if (x2[j2-1] =='c')
ar = c;
if (x2[j2-1] =='d')
ar = d;
if (x2[j2-1] =='e')
ar = e;
if (x2[j2-1] =='f')
ar = f;
if (x2[j2-1] =='g')
ar = g;
if (x2[j2-1] =='h')
ar = h;
if (x2[j2-1] =='i')
ar = i;
if (x2[j2-1] =='j')
ar = j;
if (x2[j2-1] =='k')
ar = k;
if (x2[j2-1] =='l')
ar = l;
if (x2[j2-1] =='m')
ar = m;
if (x2[j2-1] =='n')
ar = n;
if (x2[j2-1] =='o')
ar = o;
if (x2[j2-1] =='p')
ar = p;
if (x2[j2-1] =='q')
ar = q;
if (x2[j2-1] =='r')
ar = r;
if (x2[j2-1] =='s')
ar = s;
if (x2[j2-1] =='t')
ar = t;
if (x2[j2-1] =='u')
ar = u;
if (x2[j2-1] =='v')
ar = v;
if (x2[j2-1] =='w')
ar = w;
if (x2[j2-1] =='x')
ar = x;
if (x2[j2-1] =='y')
ar = y;
if (x2[j2-1] =='z')
ar = z;
key = array_search(ar, x2[ j2]);
if ((key != -1) && (ar[key + 1] != '\0')) {
//Ставим длину массива равной j
x2_len = j2;
//Заменим substr
x2[j2+1]='\0';
//Пишем в массив x
x2[x2_len++]= ar[key+1];
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
while(1) {
//Если дошли до f выходим
if ((x2[strlen(x2)-1] == last_point)) {
//Пишем в x2
x2[x2_len++] = z2;
break;
}
//Пишем в x2
x2[x2_len++] = z2;
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
}
//Переменную ставим равной массиву
j2=strlen(x2);
//Выводим
printf("%s", x2);
printf("\n\r");
ppp++;
}
j2--;
}
printf("%d", ppp);
}
Время с выводом:
real 0m0,544s
user 0m0,169s
sys 0m0,285s
Время без вывода:
real 0m0,097s
user 0m0,093s
sys 0m0,005s
И … сертификат на МакБук Про достается всё-таки мне. =) Неожиданный поворт в нашем шоу. Все-таки люди победили нейронные сети.
Исправление AnonymUser, :
И казалось бы, питонщик уходит в отрыв, но тут подоспел мой код:
/*Поиск всех путей на графе. Переписан из кода PHP*/
#include <stdio.h>
#include <string.h>
static int array_search (const char *ar, char el) {
int i = 0;
while (ar[i] != '\0') {
if (ar[i] == el) return i;
i++;
}
return -1;
}
int main() {
int key;
char a[] = "bcdz";
char b[] = "defz";
char c[] = "defz";
char d[] = "efz";
char e[] = "fz";
char f[] = "ghjz";
char g[] = "hijz";
char h[] = "ijkz";
char i[] = "jklz";
char j[] = "kmz";
char k[] = "lnoz";
char l[] = "mz";
char m[] = "noz";
char n[] = "oz";
char o[] = "pz";
char p[] = "qz";
char q[] = "rz";
char r[] = "sz";
char s[] = "tuz";
char t[] = "uvz";
char u[] = "vwz";
char v[] = "wz";
char w[] = "xyz";
char x[] = "yz";
char y[] = "z";
char z[] = "";
char x2[26] = "abdefghijklmnopqrstuvwxyz";
char z2;
int j2 = strlen(x2)-1;
int last_point = 'z';
int i2 = 0;
char *ar;
int x2_len = 0;
//Печать 1-го
for (i2=0; x2[i2] != '\0'; i2++)
printf("%c", x2[i2]);
printf("\n\r");
int ppp = 1;
while ( j2 != 0 )
{
if (x2[j2-1] =='a')
ar = a;
if (x2[j2-1] =='b')
ar = b;
if (x2[j2-1] =='c')
ar = c;
if (x2[j2-1] =='d')
ar = d;
if (x2[j2-1] =='e')
ar = e;
if (x2[j2-1] =='f')
ar = f;
if (x2[j2-1] =='g')
ar = g;
if (x2[j2-1] =='h')
ar = h;
if (x2[j2-1] =='i')
ar = i;
if (x2[j2-1] =='j')
ar = j;
if (x2[j2-1] =='k')
ar = k;
if (x2[j2-1] =='l')
ar = l;
if (x2[j2-1] =='m')
ar = m;
if (x2[j2-1] =='n')
ar = n;
if (x2[j2-1] =='o')
ar = o;
if (x2[j2-1] =='p')
ar = p;
if (x2[j2-1] =='q')
ar = q;
if (x2[j2-1] =='r')
ar = r;
if (x2[j2-1] =='s')
ar = s;
if (x2[j2-1] =='t')
ar = t;
if (x2[j2-1] =='u')
ar = u;
if (x2[j2-1] =='v')
ar = v;
if (x2[j2-1] =='w')
ar = w;
if (x2[j2-1] =='x')
ar = x;
if (x2[j2-1] =='y')
ar = y;
if (x2[j2-1] =='z')
ar = z;
key = array_search(ar, x2[ j2]);
if ((key != -1) && (ar[key + 1] != '\0')) {
//Ставим длину массива равной j
x2_len = j2;
//Заменим substr
x2[j2+1]='\0';
//Пишем в массив x
x2[x2_len++]= ar[key+1];
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
while(1) {
//Если дошли до f выходим
if ((x2[strlen(x2)-1] == last_point)) {
//Пишем в x2
x2[x2_len++] = z2;
break;
}
//Пишем в x2
x2[x2_len++] = z2;
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
}
//Переменную ставим равной массиву
j2=strlen(x2);
//Выводим
printf("%s", x2);
printf("\n\r");
ppp++;
}
j2--;
}
printf("%d", ppp);
}
Время с выводом:
real 0m0,544s
user 0m0,169s
sys 0m0,285s
Время без вывода:
real 0m0,097s
user 0m0,093s
sys 0m0,005s
И … сертификат на МакБук Про достается всё-таки мне. =) Неожиданный поворт в нашем шоу.
Исходная версия AnonymUser, :
И казалось бы, питонщик уходит в отрыв, но тут подоспел мой код:
/*Поиск всех путей на графе. Переписан из код PHP*/
#include <stdio.h>
#include <string.h>
static int array_search (const char *ar, char el) {
int i = 0;
while (ar[i] != '\0') {
if (ar[i] == el) return i;
i++;
}
return -1;
}
int main() {
int key;
char a[] = "bcdz";
char b[] = "defz";
char c[] = "defz";
char d[] = "efz";
char e[] = "fz";
char f[] = "ghjz";
char g[] = "hijz";
char h[] = "ijkz";
char i[] = "jklz";
char j[] = "kmz";
char k[] = "lnoz";
char l[] = "mz";
char m[] = "noz";
char n[] = "oz";
char o[] = "pz";
char p[] = "qz";
char q[] = "rz";
char r[] = "sz";
char s[] = "tuz";
char t[] = "uvz";
char u[] = "vwz";
char v[] = "wz";
char w[] = "xyz";
char x[] = "yz";
char y[] = "z";
char z[] = "";
char x2[26] = "abdefghijklmnopqrstuvwxyz";
char z2;
int j2 = strlen(x2)-1;
int last_point = 'z';
int i2 = 0;
char *ar;
int x2_len = 0;
//Печать 1-го
for (i2=0; x2[i2] != '\0'; i2++)
printf("%c", x2[i2]);
printf("\n\r");
int ppp = 1;
while ( j2 != 0 )
{
if (x2[j2-1] =='a')
ar = a;
if (x2[j2-1] =='b')
ar = b;
if (x2[j2-1] =='c')
ar = c;
if (x2[j2-1] =='d')
ar = d;
if (x2[j2-1] =='e')
ar = e;
if (x2[j2-1] =='f')
ar = f;
if (x2[j2-1] =='g')
ar = g;
if (x2[j2-1] =='h')
ar = h;
if (x2[j2-1] =='i')
ar = i;
if (x2[j2-1] =='j')
ar = j;
if (x2[j2-1] =='k')
ar = k;
if (x2[j2-1] =='l')
ar = l;
if (x2[j2-1] =='m')
ar = m;
if (x2[j2-1] =='n')
ar = n;
if (x2[j2-1] =='o')
ar = o;
if (x2[j2-1] =='p')
ar = p;
if (x2[j2-1] =='q')
ar = q;
if (x2[j2-1] =='r')
ar = r;
if (x2[j2-1] =='s')
ar = s;
if (x2[j2-1] =='t')
ar = t;
if (x2[j2-1] =='u')
ar = u;
if (x2[j2-1] =='v')
ar = v;
if (x2[j2-1] =='w')
ar = w;
if (x2[j2-1] =='x')
ar = x;
if (x2[j2-1] =='y')
ar = y;
if (x2[j2-1] =='z')
ar = z;
key = array_search(ar, x2[ j2]);
if ((key != -1) && (ar[key + 1] != '\0')) {
//Ставим длину массива равной j
x2_len = j2;
//Заменим substr
x2[j2+1]='\0';
//Пишем в массив x
x2[x2_len++]= ar[key+1];
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
while(1) {
//Если дошли до f выходим
if ((x2[strlen(x2)-1] == last_point)) {
//Пишем в x2
x2[x2_len++] = z2;
break;
}
//Пишем в x2
x2[x2_len++] = z2;
if (x2[strlen(x2)-1] =='a')
z2 = a[0];
if (x2[strlen(x2)-1] =='b')
z2 = b[0];
if (x2[strlen(x2)-1] =='c')
z2 = c[0];
if (x2[strlen(x2)-1] =='d')
z2 = d[0];
if (x2[strlen(x2)-1] =='e')
z2 = e[0];
if (x2[strlen(x2)-1] =='f')
z2 = f[0];
if (x2[strlen(x2)-1] =='g')
z2 = g[0];
if (x2[strlen(x2)-1] =='h')
z2 = h[0];
if (x2[strlen(x2)-1] =='i')
z2 = i[0];
if (x2[strlen(x2)-1] =='j')
z2 = j[0];
if (x2[strlen(x2)-1] =='k')
z2 = k[0];
if (x2[strlen(x2)-1] =='l')
z2 = l[0];
if (x2[strlen(x2)-1] =='m')
z2 = m[0];
if (x2[strlen(x2)-1] =='n')
z2 = n[0];
if (x2[strlen(x2)-1] =='o')
z2 = o[0];
if (x2[strlen(x2)-1] =='p')
z2 = p[0];
if (x2[strlen(x2)-1] =='q')
z2 = q[0];
if (x2[strlen(x2)-1] =='r')
z2 = r[0];
if (x2[strlen(x2)-1] =='s')
z2 = s[0];
if (x2[strlen(x2)-1] =='t')
z2 = t[0];
if (x2[strlen(x2)-1] =='u')
z2 = u[0];
if (x2[strlen(x2)-1] =='v')
z2 = v[0];
if (x2[strlen(x2)-1] =='w')
z2 = w[0];
if (x2[strlen(x2)-1] =='x')
z2 = x[0];
if (x2[strlen(x2)-1] =='y')
z2 = y[0];
if (x2[strlen(x2)-1] =='z')
z2 = z[0];
}
//Переменную ставим равной массиву
j2=strlen(x2);
//Выводим
printf("%s", x2);
printf("\n\r");
ppp++;
}
j2--;
}
printf("%d", ppp);
}
Время с выводом:
real 0m0,544s
user 0m0,169s
sys 0m0,285s
Время без вывода:
real 0m0,097s
user 0m0,093s
sys 0m0,005s
И … сертификат на МакБук Про достается всё-таки мне. =) Неожиданный поворт в нашем шоу.