TOPIC
PROBLEM 1871 - URI Fórum 1.0
This topic was solved and cannot recieve new replies.
-
Yumi Arantes replied 4 years ago
Olá. Pelo o que eu testei no codeblocks parece-me que meu programa está certo, porém só consigo 100% wrong answer :B alguem help me please? to ficando doida.
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ int cont; int cont2=0; for(cont=1;cont>cont2;cont++){ long int M;long int N;long int C; scanf("%d %d", &M, &N); C = M+N; char resultado[100]; char resultadof[100]; char armazenando[100]; sprintf(resultado, "%d", C); int i; if((M==0)&&(N==0)){ break; } else{ for(i=0;i<strlen(resultado);i++){ if(resultado[i]!='0'){ armazenando[0]=resultado[i]; armazenando[1]='\0'; strcat(resultadof,armazenando); } } printf("%s\n", resultadof); resultadof[0]='\0'; } } return 0; }
-
[Suicide Squad] Eliu Moraes replied 4 years ago
Estou com 10% de WA, alguém poderia me ajudar a encontrar a entrada que está errada? Ou fornecer algumas saídas para ajudar.
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int main(int argc, char const *argv[]) { char numero[100],z; long long int a,b; for(;;){ cin >> a >> b; if(a==0 && b==0) break; sprintf(numero,"%lld",(a+b)); // cout << numero << endl; for (int i = 0; i < strlen(numero); ++i) { if(numero[i]=='0'){ for (int s = i; s < ( (strlen(numero)) -1 ); ++s) { a = numero[s]; numero[s] = numero[s+1]; numero[s+1] = a; } } } for (int i = 0; i < strlen(numero); ++i) { if(numero[i]=='0'){ numero[i] = '\0'; break; } } cout << numero << endl; numero[0] = '\0'; } return 0; }
-
Irlan Freitas replied 5 years ago
int num1, num2; Scanner scan = new Scanner(System.in); num1 = scan.nextInt(); num2 = scan.nextInt(); if ((num1 == 0) && (num2 == 0)) { System.exit(0); } else { System.out.println(String.valueOf((num1 + num2)).replace("0", "")); }
Testei o código milhares de vezes e ainda recebo 100% error o que posso fazer?
Obs: Eu faço o import Scanner..
-
Matheus Leão replied 5 years ago
Parece que você não tira todos os zeros. Testei 47 53 e o resultado deveria ser 1 (100 - 2 zeros), mas o seu é 10
-
Augusto Domingues replied 5 years ago
Estou recebendo Wrong Answer(10%); Alguém sabe qual pode ser o problema? o meu código é este:
#include <iostream> #include <string> #include <cmath> #include <vector> #include <sstream> using namespace std; int main(int argc, char * argv[]){ unsigned long long n,m; cin >> n >> m; while((n != 0 ) && (m != 0)){ unsigned long long resultado = n+m; stringstream ss; ss << resultado; string str = ss.str(); for(unsigned long long i = 0; i < str.size();i++){ if(str.at(i) == '0') str.erase(i,1); } cout << str << endl; cin >> n >> m; } return 0; }
-
Gustavo Riposati replied 5 years ago
Usem sprintf para passarem esse problema .... itoa não vai rolar porque não é uma função padrão do C
-
Gustavo Bezerra Ribeiro replied 5 years ago
Olá,
Apesar de ser suportada por diversos compiladores, a função itoa() não pertence ao padrão ANSI C, não pertencendo também à linguagem C++.
Referência:
http://www.cplusplus.com/reference/cstdlib/itoa/Abraços.