20201023记录 CodeforcesRound #677(DIV.3)(A-B)

大概从现在开始吧,姑且算是做一个记录,准备记录一下自己在codeforces上做出的题目,做出的题目很少,写的也很烂,有兴趣的话大家就凑合着看一下吧。

A题
大概题意:计数的和,给你一个数,按照规则慢慢从1变化到给你的数,然后在过程中统计对应规则的数的和。数数字的规律是 (1,11,111,1111),(2,22,222,2222),以此类推例:如果给的数是“22”,按照1,11,111,1111,2,22一直数到22,然后每个数对应的值是1,2,3,4,1,2;1+2+3+4+1+2=13,输出13.
Input

The first line of the input contains one
integer t (1≤t≤36) — the number of test cases.

The only line of the test case contains
one integer x (1≤x≤9999) — the apartment number of the resident who answered the call. It is
guaranteed that x consists of the same digit.

Output

For each test
case, print the answer: how many digits our character pressed in total.

Input
4
22
9999
1
777

Output
13
90
1
66
题解:
如果一个一个从零开始循环统计然后相加,在等于这个数的时候退出的话,这样算的话未免用时太多,会TLE,所以直接看这个数的开头数字是多少,就可以直接算出除这个数字本身之前算出来的数的和的值了,接下来循环来看一下这个数字是多少位的,加上这个数字本身所需要相加的数就可以了。(语言组织的很烂,没看懂的话直接看代码就好了hhhh

#include <stdio.h>
 
int main()
{
   
 int t;
 scanf("%d",&t);  //第一列,需要判断数字的次数
 for(int i=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值