码迷,mamicode.com
首页 > 其他好文 > 详细

stringstream字符串流的妙用

时间:2018-09-06 02:31:38      阅读:346      评论:0      收藏:0      [点我收藏+]

标签:div   string   clu   字符   namespace   需要   ret   溢出   有一个   

现在有一个数组,其值为从1到10000的连续增长的数字。出于某次偶然操作,导致这个数组中丢失了某三个元素,同时顺序被打乱,现在需要你用最快的方法找出丢失的这三个元素,并且将这三个元素根据从小到大重新拼接为一个新数字,计算其除以7的余数。 例:丢失的元素为336,10,8435,得到的新数字为103368435,除以七的余数为2。

/*顺序被打乱的意思是这个数组的剩余的9997个数不再是递增的而是无序的,在剩余的9997个数字
对应的本来的位置若存在则置为1,不存在则依旧是初始值0,然后再做一个查找,把值为0的三个位置找出,得到
丢失的三个数*/
#include<iostream>
#include<string>
#include<sstream>
using namespace std;
int main()
{
    int temp;
    int num[10001]={0};
    string str=" ",s;
    long long sum=0;//防止新数字溢出
    for(int i=1;i<=9997;i++)//因为题目已经说了值从1道10000所以0也就没必要了
    {
        cin>>temp;
        num[temp]=1;
    }
    for(int j=1;j<=10000;j++)//同上
    {
        if(num[j]==0)
        {
            stringstream s_temp;
            s_temp<<j;//类型转换从int到string
            s_temp>>s;
            str+=s;
        }
    }
    stringstream s_temp;
    s_temp<<str;//类型转换从string到long long
    s_temp>>sum;
    cout<<sum%7<<endl;
    return 0;
}

  

stringstream字符串流的妙用

标签:div   string   clu   字符   namespace   需要   ret   溢出   有一个   

原文地址:https://www.cnblogs.com/wuyepeng/p/9595289.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!