█████████ ████ ███░░░░░███ ░░███ ███ ░░░ ██████ ███████ ██████ ██████ ░███ ███░░███ ███░░███ ███░░███ ███░░███ ░███ ░███ ░███░███ ░███ ░███████ ░███ ░███ ░░███ ███░███ ░███░███ ░███ ░███░░░ ░███ ░███ ░░█████████ ░░██████ ░░████████░░██████ ░░██████ ░░░░░░░░░ ░░░░░░ ░░░░░░░░ ░░░░░░ ░░░░░░

Envío 3840

Problema 0x30 - Incrementar un número muy grande

  • Autor: bryancalisto
  • Fecha: 2021-04-18 00:57:46 UTC (Hace casi 3 años)
Caso # Resultado Tiempo Memoria
#1
Incorrecto
0.006 s 1 KBi
#2
Incorrecto
0.002 s 1 KBi
#3
Incorrecto
0.004 s 1 KBi
#4
Correcto
0.006 s 1 KBi
#5
Correcto
0.004 s 1 KBi
#6
Correcto
0.004 s 1 KBi
#7
Correcto
0.005 s 1 KBi
#8
Correcto
0.005 s 1 KBi
#9
Correcto
0.002 s 2 KBi
#10
Correcto
0.003 s 2 KBi
#11
Correcto
0.006 s 1 KBi
#12
Correcto
0.002 s 2 KBi
#13
Incorrecto
0.003 s 1 KBi
#14
Incorrecto
0.003 s 2 KBi
#15
Incorrecto
0.002 s 2 KBi
#16
Incorrecto
0.003 s 1 KBi
#17
Incorrecto
0.003 s 2 KBi
#18
Incorrecto
0.002 s 2 KBi
#19
Incorrecto
0.004 s 1 KBi
#20
Incorrecto
0.005 s 1 KBi
#21
Incorrecto
0.002 s 2 KBi
#22
Incorrecto
0.004 s 1 KBi
#23
Incorrecto
0.004 s 1 KBi
#24
Incorrecto
0.002 s 1 KBi
#25
Incorrecto
0.004 s 1 KBi
#26
Incorrecto
0.003 s 1 KBi
#27
Incorrecto
0.004 s 1 KBi
#28
Incorrecto
0.005 s 1 KBi
#29
Incorrecto
0.005 s 1 KBi
#30
Incorrecto
0.004 s 1 KBi
#31
Incorrecto
0.003 s 2 KBi
#32
Incorrecto
0.003 s 2 KBi
#33
Incorrecto
0.007 s 1 KBi
#34
Incorrecto
0.004 s 1 KBi
Puntos totales: 27 / 100

Código

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
  char *input = (char *)malloc(10000);
  int len, i, *num, carry = 0;

  fgets(input, 10000, stdin);
  len = strlen(input);
  num = (int *)malloc(sizeof(int) * len + 1); // un espacio extra en caso de que el numero aumente en una cifra
  // printf("len: %d\n", len);

  // printf("input: %s\n", input);

  for (i = 0; i < len; i++)
  {
    num[i] = input[i] - '0';
  }

  for (i = len - 1; i >= 0; i--)
  {
    num[i] += 1 + carry;

    if (num[i] > 9)
    {
      carry = 1;
      num[i] = 0;
    }
  }

  if (carry == 1)
  {
    printf("1");
  }

  for (i = 0; i < len - 1; i++)
  {
    printf("%d", num[i]);
  }

  free(num);
  return 0;
}