Форум сайта python.su
-2
kil=int(-1) c=int() j=int() k=int(1) magic=int(1) sum=int() b=[0,0,0,0,0,0,0,0,0] a= input().split() for i in range(len(a)): a[i] = int(a[i]) b[a[i]]=b[a[i]]+1 while (kil-2)>(j+1) while (a[j]+1)<10 if (b[c]>0) sum=sum+magic*b[j]/(b[a[i]]+1) c++ b[a[i]=b[a[i]]+1 k=k+1 magic=magic*k/b[a[i]] j=j+1 print(sum)
Отредактировано FishHook (Дек. 7, 2013 16:55:07)
Офлайн
253
А че тут искать это проще простого. Правильная только строчка:
a = input().split()
Отредактировано doza_and (Дек. 7, 2013 17:06:35)
Офлайн
-2
Переписовал задачу с языка с++, вот как она выглядела на с++
#include <iostream>
using namespace std;
long long a,b;
int main()
{long long i,kilkict=-1,j,magic,k=1,sum=0;
while(cin) cin>>a;
kilkict=kilkict-1;cout<<kilkict<<endl;
b[a]++;
magic=1;
for (i=kilkict-1; i>=0;i–)
{
for (j=a+1;j<10;j++) if (b>0) {sum=sum+magic*b/(b[a]+1);}
b[a]++;k++;magic=magic*k/b[a];}
cout<<sum<<endl;
return 0;
}
Офлайн
568
Какой ужас
Тут ошибку искать - это как мёртвому член целовать.
Ну, предположим, что строка
while (kil-2)>(j+1)
Офлайн
-2
Ошибка гдето в циклах while, но вот немогу понять где
Отредактировано Vadvirus (Дек. 7, 2013 17:02:11)
Офлайн
253
Обарачивайте код в теги.
:) Для c++ тоже не айс.
some = int() # все равное что some =0 не нужны тут int sum # зарезервированное слово i=i+1 # есть операторы +=,*= c++ # в контексте питона не имеет смысла
Отредактировано doza_and (Дек. 7, 2013 17:05:15)
Офлайн
568
А че тут искать это проще простого. Правильные только строчки:тут поциент тоже налажал, переопределил стандартную функцию sumprint(sum)
Офлайн
-2
Спасибо большое, уже исправил, теперь вот здесь ошибка
if (b>0)
Офлайн
568
А здесь тоже самое.
В детсад быстро марш, и чтоб я тебя здесь больше не видел
Отредактировано FishHook (Дек. 7, 2013 17:07:45)
Офлайн
253
VadvirusЩа поправлю
переопределил стандартную функцию sum
Офлайн