#300: 關於這題

Unknown User

c034. 00424 - Integer Inquiry -- UVa424 | From: [123.240.235.102] | 發表日期 : 2008-05-27 19:49

與正確輸出不相符(line:1)
您的答案為: 94036759373372188512160704328667134005135599841657015230979697039335916025091546600530825963987157325
正確答案為: 542752674349339634925109431351390543043102385172852692458764260471789059534961180576127198631499007338

我的CODE在onlie judge是AC的@@ 不過到這裡 第一個測資就狂錯Orz

可以告知一下第一個測資是什麼嗎@@?

 以下是小弟的code 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 10001

void change(char *a, int *b)
{
 int i, len;

 len = strlen(a);
 memset(b, 0, sizeof(b));
 for( i = 0; i < len; i++)
 {
  b[N - i - 1] = a[len - i -1] - 48;
 }
 for(i = N - len - 1; i >= 0; i--){
  b[i] = 0;
 }

}

void add(int *a, int *b)
{
 int i, add = 0;

 for(i = N - 1; i >= 0; i--)
 {
   a[i] += b[i] + add;
   if( a[i] >= 10){
    a[i] -= 10, add = 1;
   }
   else{
    add = 0;
   }
 }
}
void print(int *a)
{
 int i, check;
 for(i = 0; i < N; i++)
 {
  if(a[i] != 0){
   check = i;
   break;
  }
 }
 for(i = check; i < N; i++)
 {
  printf("%d", a[i]);
 }

 printf("\n");
}


int main(void)
{
 char in[N];
 int in2[N], all[N];
 memset(all, 0, sizeof(all));

 while( scanf("%s", in) != EOF )
 {
  if( in[0] == '0'){
   break;
  }
  change(in, in2);
  add(all, in2);
 }
  print(all);
 return 0;
}

 

 
#301: Re:關於這題


big2290484 (getter)

學校 : 國立臺中第二高級中學
編號 : 1026
來源 : [203.71.212.254]
最後登入時間 :
2010-08-09 15:52:33
c034. 00424 - Integer Inquiry -- UVa424 | From: [123.240.235.101] | 發表日期 : 2008-05-28 20:33

 小弟忘記用自己的帳號發文了XDrz

 

與正確輸出不相符(line:1)
您的答案為: 94036759373372188512160704328667134005135599841657015230979697039335916025091546600530825963987157325
正確答案為: 542752674349339634925109431351390543043102385172852692458764260471789059534961180576127198631499007338

我的CODE在onlie judge是AC的@@ 不過到這裡 第一個測資就狂錯Orz

可以告知一下第一個測資是什麼嗎@@?

 以下是小弟的code 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 10001

void change(char *a, int *b)
{
 int i, len;

 len = strlen(a);
 memset(b, 0, sizeof(b));
 for( i = 0; i < len; i++)
 {
  b[N - i - 1] = a[len - i -1] - 48;
 }
 for(i = N - len - 1; i >= 0; i--){
  b[i] = 0;
 }

}

void add(int *a, int *b)
{
 int i, add = 0;

 for(i = N - 1; i >= 0; i--)
 {
   a[i] += b[i] + add;
   if( a[i] >= 10){
    a[i] -= 10, add = 1;
   }
   else{
    add = 0;
   }
 }
}
void print(int *a)
{
 int i, check;
 for(i = 0; i < N; i++)
 {
  if(a[i] != 0){
   check = i;
   break;
  }
 }
 for(i = check; i < N; i++)
 {
  printf("%d", a[i]);
 }

 printf("\n");
}


int main(void)
{
 char in[N];
 int in2[N], all[N];
 memset(all, 0, sizeof(all));

 while( scanf("%s", in) != EOF )
 {
  if( in[0] == '0'){
   break;
  }
  change(in, in2);
  add(all, in2);
 }
  print(all);
 return 0;
}

 



 
#303: Re:關於這題


POOHccc ()

學校 : 國立臺中技術學院
編號 : 1139
來源 : [220.135.97.253]
最後登入時間 :
2012-02-04 21:23:42
c034. 00424 - Integer Inquiry -- UVa424 | From: [220.134.60.246] | 發表日期 : 2008-05-30 15:01

 小弟忘記用自己的帳號發文了XDrz

 

與正確輸出不相符(line:1)
您的答案為: 94036759373372188512160704328667134005135599841657015230979697039335916025091546600530825963987157325
正確答案為: 542752674349339634925109431351390543043102385172852692458764260471789059534961180576127198631499007338

我的CODE在onlie judge是AC的@@ 不過到這裡 第一個測資就狂錯Orz

可以告知一下第一個測資是什麼嗎@@?

 以下是小弟的code 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 10001

void change(char *a, int *b)
{
 int i, len;

 len = strlen(a);
 memset(b, 0, sizeof(b));
 for( i = 0; i < len; i++)
 {
  b[N - i - 1] = a[len - i -1] - 48;
 }
 for(i = N - len - 1; i >= 0; i--){
  b[i] = 0;
 }

}

void add(int *a, int *b)
{
 int i, add = 0;

 for(i = N - 1; i >= 0; i--)
 {
   a[i] += b[i] + add;
   if( a[i] >= 10){
    a[i] -= 10, add = 1;
   }
   else{
    add = 0;
   }
 }
}
void print(int *a)
{
 int i, check;
 for(i = 0; i < N; i++)
 {
  if(a[i] != 0){
   check = i;
   break;
  }
 }
 for(i = check; i < N; i++)
 {
  printf("%d", a[i]);
 }

 printf("\n");
}


int main(void)
{
 char in[N];
 int in2[N], all[N];
 memset(all, 0, sizeof(all));

 while( scanf("%s", in) != EOF )
 {
  if( in[0] == '0' && in[1] == 0){
   break;
  }
  change(in, in2);
  add(all, in2);
 }
  print(all);
 return 0;
}

 





程式碼裡紅色粗體部分是我幫你加的

測資有可能輸入的是 0123,但用你原本的程式會以為輸入結束

這樣就有AC了 

 
#308: Re:關於這題


big2290484 (getter)

學校 : 國立臺中第二高級中學
編號 : 1026
來源 : [203.71.212.254]
最後登入時間 :
2010-08-09 15:52:33
c034. 00424 - Integer Inquiry -- UVa424 | From: [123.240.234.93] | 發表日期 : 2008-05-31 21:57

 小弟忘記用自己的帳號發文了XDrz

 

與正確輸出不相符(line:1)您的答案為: 94036759373372188512160704328667134005135599841657015230979697039335916025091546600530825963987157325正確答案為: 542752674349339634925109431351390543043102385172852692458764260471789059534961180576127198631499007338

我的CODE在onlie judge是AC的@@ 不過到這裡 第一個測資就狂錯Orz

可以告知一下第一個測資是什麼嗎@@?

 以下是小弟的code 

#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 10001

void change(char *a, int *b){ int i, len;

 len = strlen(a); memset(b, 0, sizeof(b)); for( i = 0; i < len; i++) {  b[N - i - 1] = a[len - i -1] - 48; } for(i = N - len - 1; i >= 0; i--){  b[i] = 0; }

}

void add(int *a, int *b){ int i, add = 0;

 for(i = N - 1; i >= 0; i--) {   a[i] += b[i] + add;   if( a[i] >= 10){    a[i] -= 10, add = 1;   }   else{    add = 0;   } }}void print(int *a){ int i, check; for(i = 0; i < N; i++) {  if(a[i] != 0){   check = i;   break;  } } for(i = check; i < N; i++) {  printf("%d", a[i]); }

 printf("\n");}

int main(void){ char in[N]; int in2[N], all[N]; memset(all, 0, sizeof(all));

 while( scanf("%s", in) != EOF ) {  if( in[0] == '0' && in[1] == 0){   break;  }  change(in, in2);  add(all, in2); }  print(all); return 0;}

 

程式碼裡紅色粗體部分是我幫你加的

測資有可能輸入的是 0123,但用你原本的程式會以為輸入結束

這樣就有AC了 

 

感謝大大

小弟AC了

 
ZeroJudge Forum