ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1083. Факториалы!!!

WA #2
Послано yhtruenoae86 14 сен 2011 21:25
//WHY
#include<cstdlib>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
    int n=0;
    //scanf("%d",&n);
    char c[25]; //scanf("%c",c);
    int p=0;
    gets(c);//printf("%c",c[0]);
    int x=0,y;
    if(c[1]==' '){y=2;n=c[0]-48;} else {y=3;n=10;}

    int l=strlen(c);
    for(x=y;x<l;x++)if(c[x]==c[y])p++;
    int ans=1;
    while(n>=(n+p)%p){ans*=n;n-=p;}
    printf("%d",ans);
   // system("pause");
    return 0;
}
Re: WA #2
Послано yhtruenoae86 14 сен 2011 21:31
//Accepted
#include<cstdlib>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
    int n=0;
    //scanf("%d",&n);
    char c[25]; //scanf("%c",c);
    int p=0;
    gets(c);//printf("%c",c[0]);
    int x=0,y;
    if(c[1]==' '){y=2;n=c[0]-48;} else {y=3;n=10;}

    int l=strlen(c);
    for(x=y;x<l;x++)if(c[x]==c[y])p++;
    int ans=1;
    while(n>=(n+p)%p&&n>0){ans*=n;n-=p;}
    printf("%d",ans);
   // system("pause");
    return 0;
}