丢失的三个数
发布日期:2021-07-01 00:14:11 浏览次数:2 分类:技术文章

本文共 639 字,大约阅读时间需要 2 分钟。

时间限制:1秒 空间限制:32768K

题目描述

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

输入描述

现在输入数据为一行,包含9997个数字,空格隔开。

输出描述

输出为一行,包含一个数字。

样例输入

同题设例子输入

输出

2

解题思路

标记输入的9997个数,然后遍历从1到10000找到丢失的三个数,然后把它们按顺序组成一个数并对7求余。

#include 
#include
int ans[10010];int main(){ int m, t = 9997; long long sum = 0; while (t--) { scanf("%d", &m); ans[m]++; } for (int i = 1; i <= 9997; i++) if (!ans[i]) sum = sum * pow(10, (int)log10(i) + 1) + i; printf("%lld\n", sum % 7); return 0;}

 

转载地址:https://lzyws739307453.blog.csdn.net/article/details/82704276 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:进制均值
下一篇:酒店价格

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月16日 14时47分42秒