杭电OJ1002大数据相加

先输入n ,代表共有几组数字,再输入n组数据

#include<iostream>
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<malloc.h>
using namespace std;
char resu[10000];
void Reverse(char a[10000])
{
    int leng = strlen(a);
    char temp;
    for (int i = 0; i < leng / 2; i++)
    {
        temp = a[leng - i - 1];
        a[leng - i - 1] = a[i];
        a[i] = temp;
    }
    return ;
}
char *toAdd(char a[10000], char b[10000])
{
    Reverse(a);
    Reverse(b);
    char min[10000], max[10000];

    if (strlen(a) >= strlen(b))
    {
        strcpy_s(min, b);
        strcpy_s(max, a);
    }
    else
    {
        strcpy_s(min, a);
        strcpy_s(max, b);
    }
    int jinwei = 0;
    for (int i = 0; i < (int)strlen(min); i++)
    {
        if (min[i] + max[i] - ‘0‘ - ‘0‘ + jinwei>=10)
        {
            resu[i] = min[i] + max[i] - ‘0‘ + jinwei - 10;
            jinwei = 1;
        }
        else
        {
            resu[i] = min[i] + max[i] - ‘0‘ + jinwei;
            jinwei = 0;
        }
    }
    int i;
    for (i = strlen(min); i < (int)strlen(max); i++)
    {
        if (max[i]- ‘0‘ + jinwei>=10)
        {
            resu[i] =max[i]+ jinwei - 10;
            jinwei = 1;
        }
        else
        {
            resu[i] =max[i]+ jinwei;
            jinwei = 0;
        }
    }
    if (jinwei)
    {
        resu[i] = jinwei + ‘0‘;
        resu[++i] = ‘\0‘;
    }
    else
    resu[i] = ‘\0‘;
    Reverse(resu);
    return resu;
}
int  main( )
{
    int n; char a[20][10000], b[20][10000];
    cin >> n;
    for (int i = 0; i < n; i++)
    {
        cin >> a[i] >> b[i];
    }
    for (int i = 0; i < n; i++)
    {
        cout << "Case " << i+1 << ":" << endl;
        cout << a[i] << " + " << b[i] << " = ";
        toAdd(a[i], b[i]);
        int k = 0;
        while (resu[k] == ‘0‘)
            k++;
        if (k == strlen(resu))
        {
            cout << "0";
            cout << endl;
        }
        else
        {
            for (int o = k; o < strlen(resu);o++)
            cout << resu[o];
            cout << endl;
        }
        if (i <( n - 1))
            cout << endl;
    }
    return 0;
}
时间: 2024-08-27 13:36:13

杭电OJ1002大数据相加的相关文章

算法---大数据相加

开通博客开始第一次写发表算法博客.深知一半算法考试都是用C,C++,由于大四开始到今年毕业工作到现在一直从事C#开发,C++用得很少了.链表,指针也只知道一个概念了.用得没以前熟练了.所以后续更新的算法题我都是基于C#语法的.算法主要体现的是解题思路.跟题目一样,本次算法主要实现大数据相加. 解题思路: 1. 将大数据存储到一个链表中,C#中用List<int>来存储,每个节点表示每一位的数字. {1,2,3,4,5} =>12345 和{9,6,5,9,5} =>96595 (C

大数据相加

页面: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>大数据相加</title> </head> <body> <h3 style="margin-left:800px;margin-top: 200px;">我是大数据相加</h3>

电商大数据项目(二)-推荐系统实战之实时分析以及离线分析

电商大数据项目-推荐系统实战(一)环境搭建以及日志,人口,商品分析http://blog.51cto.com/6989066/2325073电商大数据项目-推荐系统实战之推荐算法http://blog.51cto.com/6989066/2326209电商大数据项目-推荐系统实战之实时分析以及离线分析http://blog.51cto.com/6989066/2326214 五.实时分析Top IP(实时分析Top用户)一)模块介绍电商网站运营中,需要分析网站访问排名前N的IP,主要用来审计是否

电商大数据项目-推荐系统实战之推荐算法(三)

电商大数据项目-推荐系统实战(一)环境搭建以及日志,人口,商品分析http://blog.51cto.com/6989066/2325073电商大数据项目-推荐系统实战之推荐算法http://blog.51cto.com/6989066/2326209电商大数据项目-推荐系统实战之实时分析以及离线分析http://blog.51cto.com/6989066/2326214 (七)推荐系统常用算法协同过滤算法协同过滤算法(Collaborative Filtering:CF)是很常用的一种算法,

电商大数据项目-推荐系统实战

开源项目,请勿用于任何商业用途.源代码地址:https://github.com/asdud/Bigdata_project 本项目是基于Spark MLLib的大数据电商推荐系统项目,使用了scala语言和java语言.基于python语言的推荐系统项目会另外写一篇博客.在阅读本博客以前,需要有以下基础:1.linux的基本命令2.至少有高中及以上的数学基础.3.至少有java se基础,会scala语言和Java EE更佳(Jave EE非必需,但是可以帮助你更快理解项目的架构).4.有gi

电商大数据应用之用户画像

一.?课程目标1.1 了解用户画像是什么1.2 用户画像的作用是什么1.3 学会使用SparkSQL构建用户画像二.?前言 大数据时代已经到来,企业迫切希望从已经积累的数据中分析出有价值的东西,而用户行为的分析尤为重要.利用大数据来分析用户的行为与消费习惯,可以预测商品的发展的趋势,提高产品质量,同时提高用户满意度.本课程是基于大型电商公司的真实用户画像中提练出的精华内容,旨在培养学员了解用户画像的内容,掌握构建用户画像的方法. 三.?初识用户画像 右边是一个人的基本属性,通过一个人的基本属性我

电商大数据学习笔记:理论

1.大数据部门:数据中心.数据平台.数据部…… 2.每个部门都有:架构人员.数据分析人员.开发人员.运营人员…… 3.团队:数据仓库组.BI组.架构组.数据专家组…… 4.团队分的更细:需求组.推荐组.情报组.挖掘组.数据组.营销组…… 5.大数据有哪些重要的项目: 1)数据仓库建设: 2)经营分析报表: 3)客户精准营销: 4)推荐系统: 5)移动端数据分析. 6.大数据有哪些重点方向: 1)流量数据: 2)交易数据: 3)会员与活动数据: 4)物流与配送数据: 5)内部财务数据. 7.代表产

电商大数据学习笔记:实战

1.YARN:将资源管理和作业调度/监控分成两个独立的进程. 包含两个组件:ResourceManager和ApplicationMaster 2.YARN的特性: 1)可扩展性:2)高可用性(HA):3)兼容性(1.0版本的作业也可以执行):4)提高集群利用率: 5)支持MapReduce编程范式. 3.Hadoop的进程: 1)NameNode HDFS的守护进程: 2)Secondary NameNode 监控HDFS状态的辅助后台程序,备用NameNode: 3)DataNode 负责把

电商大数据平台运维案例

技术栈 数据流向 平台规模差异化,隔离化 YARN: https://baike.baidu.com/item/yarn/16075826?fr=aladdin 今天先到这儿,希望对您在系统架构设计与评估,团队管理, 项目管理, 产品管理,团队建设 有参考作用 , 您可能感兴趣的文章: 互联网电商购物车架构演变案例互联网业务场景下消息队列架构互联网高效研发团队管理演进之一消息系统架构设计演进互联网电商搜索架构演化之一企业信息化与软件工程的迷思企业项目化管理介绍软件项目成功之要素人际沟通风格介绍一