Форум программистов, компьютерный форум CyberForum.ru

деления по модулю, остатки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как определить размер строки LPTSTR? http://www.cyberforum.ru/cpp-beginners/thread440354.html
Как определить размер строки LPTSTR? strlen не подходит...
C++ Помогите переписать программу "система счисления" Помогите, пожалуйста, переписать программу, мне нужна программа без звездочки перед buff, только что бы она работала. Условие: Написать функцию, которая получает в качестве аргументов целое положительное число и систему счисления, в которую это число должно переводится (системы счисления от 2 до 36) #include <iostream.h> using namespace std; void f(int x, int system, char *buff) {... http://www.cyberforum.ru/cpp-beginners/thread440331.html
Sin быстрее чем из math.h C++
ребят, вообщем мне задали написать программу которая считала синус быстрее чем из math.h ) скорость должна достигаться путем потери точности) Я вот написал код который(как я думаю должен быстрее работать) но на деле не вижу что он быстрее) подтолкните кто нить) #include <iostream> #include <conio.h> #include <math.h> #include <windows.h> const int N=100000; void main(void) {int i; double...
C++ Начало программирования на C++
Решил заняться программированием на C++. Скачал учебник Харви Дейтел, Пол Дейтел "Как программировать на C++". Начало отличное. Всё обьясняет как, да что. У меня Borland C++ 6. Программа вроде нормально запустилась на Win7. Дошёл до первой практики. Как создать точно не знал. Стёр код который был уже написан и вписал свой. Компилятор ругался на TForm и ещё что то там. Понял что форма не...
C++ Вычисление произведения нечетных чисел от 1 до 10. http://www.cyberforum.ru/cpp-beginners/thread440290.html
Написать программу для вычисления произведения нечетных чисел от 1 до 10 и вывести на экран. Заранее благодарен тому, кто поможет решить или найдет такую же задачу с её решением.
C++ Опpеделить пpоизведение сpедних аpифметических значений элементов, pасположенных ниже и выше главной диагонали. Даны вещественные массивы D, S. Для каждого массива опpеделить пpоизведение сpедних аpифметических значений элементов, pасположенных ниже и выше главной диагонали. подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
04.02.2012, 07:12     деления по модулю, остатки
Проверяйте:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#pragma warning (disable:4996)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define MODULE 1000000007
 
#define ord(a) (('a' <= a && 'z' >= a)? (a - 'a'):(a - 'A' + 32))
int a[11][501];
int func(int col, int l)
{
    if(col==l)
        return 1;
    if(col==1)
        return l;
    if(a[col][l])
        return a[col][l];
    int i;
    __int64 sum=0;
    for(i=0; i<=l-col; i++)
    {
        sum+=func(col-1, l-i-1);
        sum%=MODULE;
    }
    a[col][l]=(int)sum;
    return a[col][l];
 
}
int main()
{
        int T, i;
        char arr[501];
        int str[501];
        __int64 sum;
        scanf("%d", &T);
        for (i = 0; i < T; i++)
        {
                int l, j;
 
                memset(arr, 0, 501 * sizeof(char)), 
                memset(str, 0, 501 * sizeof(int));
                sum = 1;
                scanf("%s", &arr);
                l = strlen(arr);
                for (j = 0; j < l; ++j)
                        str[ord(arr[j])]++;
              
                for (j = 0; j < 90; ++j)
                {
                    if(str[j])
                    {
                        sum*=func(str[j], l);
                        sum %= MODULE;
                        l-=str[j];
                    }
                }
                printf("%d\n", (int)sum);
        }
        return 0;
}
 
Текущее время: 22:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru