16 / 41
May 2014

Your code should look like this.
click on code tag and paste your code between them.
and on SPOJ you should not use public before class if you are using public you class name should be main.

Your algorithm is completely wrong, what problem is asking is you have to print all number until you encounter 42 in the input. Input can be any integer value it is not only between 1 and 100,and no need to print Started or finished in the output you have to print only those things which problem is asking for.

Hope this helps.

class Life 
{
	int inputArray[];
	Life(int a[])
	{
		inputArray=a;
	}
	void printResult()
	{
		System.out.println("Started");
		//System.out.println(inputArray[0]);
		for(int i=0;i<=inputArray.length-1;i++)
		{
			if(inputArray[i]==42 &&(inputArray[i]>99)&&(inputArray[i]<-99))
			break;
			System.out.println(inputArray[i]);
		}
	System.out.println("FINISHED");
	}
	public static void main(String[] args)
	{
		int c[]={1,3,4,5,1,2,3,7,8,9,0,1,2,3,42,4,5,6,7,8,4};
		Life ob=new Life(c);
		ob.printResult();
	}
}

Hi Laxman...I have changed the code as directed by you and still getting the the wrong answer...

class Main {
	int inputArray[];
	Main(int a[]){
		inputArray=a;
	}
	void printResult(){
		for(int i=0;i<=inputArray.length-1;i++){
			if(inputArray[i]==42)
				break;
			System.out.println(inputArray[i]);
		}
	}
	public static void main(String[] args) {
		int c[]={42,3,4,5,1,2,3,7,8,9,0,1,2,3,4,5,6,7,8,4};
		Main ob=new Main(c);
		ob.printResult();
		}
	}

what is this "int c[]={42,3,4,5,1,2,3,7,8,9,0,1,2,3,4,5,6,7,8,4};"

your code prints nothing.

how you are reading the input? what are you doing with "c[]".

Read the problem statement once again.

Still you don't understand what problem is asking for.
answer my question.-->How you are reading the input?

Thanks for your help.. But,I think that they should be more worried about logic instead of the source of input...Anyways I will take care of all the things that you have told me and try to solve some good problems.

How come the judge understand your logic until you process the given input and print the desired output..

I don't understand what actually you are trying to do.

anyway..good luck. smiley

What is the input constraint for this problem???I am getting a run time error..
question question question

If you are looking for a maximum on the number of integers in the input, there is none. There could be 5, there could be one billion.

2 years later

Hi everyone, i don't understand what is wrong in my code... if someone can help me...

#include <stdio.h>

int main(){
    int num;
    do {
        scanf("%d", &num);
        printf("%d", num);
    } while(num != 42);

    return 0;
}
  1. You have to print each number on a separate line
  2. The number 42 must not appear in the output
1 month later

Hey guys,
I am particularly new to coding I tried with C while giving a solution to this problem but I'm always getting an SIGSEGV error
Pleas Help!!
Here is my code

#include <stdio.h>

int main() {
	int a[20], x, count=0;
	do{
		scanf("%d\n", &x);
		a[count]=x;
		count++;
	}while(x!=42);
	
	x=0;
	for(x; x<count-1; x++){
		printf("%d\n", a[x]);
	}
	return 0;
}
9 months later

#include <stdio.h>

int main(void) {
// your code here
int a;
while(a!=42)
{
scanf("%d",&a);
if(a==42)
break;
printf("%d",a);
}

return 0;

}
Can u find problem in this code ?