Page 26 of 30

### 10038 - Jolly Jumpers WA

Posted: Sun Mar 30, 2014 3:02 pm
Hi, I'm new to this site. I have tried solving the problem called Jolly Jumpers but got a Wrong Answer. I have tried a couple of times. Please help me find the error in the code below. I have tested with the input example in the problem and got the output right.

Code: Select all

``````#include <iostream>
#include <stdlib.h>
using namespace std;

int main(){
int n, input, difference, status=0, temp;
while(cin>>n){
if(n>1 || n<3000){
for(int i=0; i<n; i++){
cin>>input[i];
}
for(int i=0; i<n-1; i++){
difference[i] = abs(input[i] - input[i+1]);
}

// sort

for(int i = 0; i<n-1; i++){
for(int j = 0; j<i; j++){
if(difference[i] < difference[j]){
temp = difference[j];
difference[j] = difference[i];
difference[i] = temp;
}
}
}

for(int i = 0; i<n-1; i++){
if(difference[i] != i+1){
status = 0;
}
else{
status = 1;
}
}

if(status == 0){
cout<<"Not jolly"<<endl;
}
else {
cout<<"Jolly"<<endl;
}
}
}
return 0;
}

``````

### Re: 10038 - Jolly Jumpers WA

Posted: Mon Mar 31, 2014 11:05 pm
4 1 2 3 6 is Not jolly

### 10038 Jolly Jumpers Code works but return WA

Posted: Tue Apr 01, 2014 7:41 pm

Code: Select all

``````#include <stdio.h>

int main()
{
int n;
while(scanf("%d", &n) == 1)
{
int y=0, s=0, isFirst=1, i;
for(i=0; i<n; i++)
{
int temp=y;
scanf("%d", &y);
if(isFirst)
{
isFirst = 0;
continue;
}
s += abs(temp-y);
}

if(s==((i*(i-1))/2))
{
printf("Jolly\n");
}
else
{
printf("Not jolly\n");
}
}
return 0;
}``````

### Re: 10038 Jolly Jumpers Code works but return WA

Posted: Tue Apr 01, 2014 9:32 pm
4 1 7 7 7 is not jolly

### Re: 10038 - Jolly Jumpers WA

Posted: Wed Apr 02, 2014 5:26 pm
hi brianfry713, I have made a change in the program and now the sequence you provided is providing correct output. Please have a look at what else is the error in the program.

Here's the edited code:

Code: Select all

``````#include <iostream>
#include <stdlib.h>
using namespace std;

int main(){
int n, input, difference, status=0, temp;
while(cin>>n){
if(n>1 || n<3000){
for(int i=0; i<n; i++){
cin>>input[i];
}
for(int i=0; i<n-1; i++){
difference[i] = abs(input[i] - input[i+1]);
}

// sort

for(int i = 0; i<n-1; i++){
for(int j = 0; j<i; j++){
if(difference[i] < difference[j]){
temp = difference[j];
difference[j] = difference[i];
difference[i] = temp;
}
}
}

for(int i = 0; i<n-1; i++){
if(difference[i] != i+1){
status = 0;
break;
}
else{
status = 1;
}
}

if(status == 0){
cout<<"Not jolly"<<endl;
}
else {
cout<<"Jolly"<<endl;
}
}
}
return 0;
}
``````

### Re: 10038 - Jolly Jumpers WA

Posted: Wed Apr 02, 2014 9:52 pm
The definition implies that any sequence of a single integer is a jolly jumper.
Input:

Code: Select all

``````2 1 3
1 1
``````
Correct output:

Code: Select all

``````Not jolly
Jolly
``````

### 10038 why getting WA

Posted: Sat Apr 12, 2014 12:52 pm
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,i,j,t,s;
scanf("%d",&t);
for(i=1;i<=t;i++)
scanf("%d",&a);
for(i=1;i<t;i++)
{
b=abs(a-a[i+1]);
}
if(b>b)
{
for(j=1;j<t-1;j++)
{
if(b[j]-1!=b[j+1])
{
printf("Not jolly\n");
break;
}
if(j==(t-2))
printf("Jolly\n");
}
}
if(b<b)
{
for(j=1;j<t-1;j++)
{
if(b[j]+1!=b[j+1])
{
printf("Not jolly\n");
break;
}
if(j==(t-2))
printf("Jolly\n");
}
}
return 0;

}

### 10038 why getting WA

Posted: Sun Apr 13, 2014 7:21 pm
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<ctype.h>
int main()
{
int a,b,c,i,j,t,s,k;
scanf("%d",&t);
for(i=1;i<=t;i++)
scanf("%d",&a);
for(i=1;i<t;i++)
{
s=abs(a[i+1]-a);
b[s]=1;
}
for(i=1;i<t;i++)
{
if(b==0||b>=t)
{
printf("Not jolly\n");
break;
}
if(i==t-1)
printf("Jolly\n");
}
return 0;

}

### Re: 10038 - Jolly Jumpers

Posted: Mon Apr 14, 2014 5:19 pm

Code: Select all

``````#include <bits/stdc++.h>
#define ll long long int
using namespace std;

register ll c = getchar();
x = 0;
ll neg = 0;
for(; ((c<48 || c>57) && c != '-'); c = getchar());
if(c=='-') {
neg = 1;
c = getchar();
}
for(; c>47 && c<58 ; c = getchar()) {
x = (x<<1) + (x<<3) + c - 48;
}
if(neg)
x = -x;
}

int main(){
int c;
while(cin >> c){
if(!c) break;
ll jo[c];
for(int i = 0; i < c; i++) fastRead_int(jo[i]);
bool jolly = true;
map<int, ll> l;
for(int i = 0; i < c-1; i++){
if(abs(jo[i] - jo[i+1]) < c){
if(l[abs(jo[i] - jo[i+1])] == 0) l[abs(jo[i] - jo[i+1])]++;
else{
jolly = false;
break;
}
}
}
if(jolly) cout << "Jolly" << endl;
else cout << "Not jolly" << endl;
}
}
``````
I don't know what is wrong with my code because it gives the correct output but still gets a WA Verdict. Can someone please help me?

### Re: 10038 -Jolly jumper. getting WA

Posted: Mon Apr 14, 2014 8:20 pm
Don't double post

### Re: 10038 why getting WA

Posted: Mon Apr 14, 2014 9:56 pm
You need to keep reading test cases until the end of file.

### Re: 10038 - Jolly Jumpers

Posted: Mon Apr 14, 2014 10:00 pm
2 1 1 is Not jolly

### Re: 10038 - Jolly Jumpers WA

Posted: Sat Jun 07, 2014 10:27 pm
Could you please tell me why 1 1 or 1 2 is a jolly.Since it has only one element so that we will not find any difference,then how to check this condition "the absolute values of the difference between successive elements take on all the values 1 through n-1".
I don't understand this things for 1 1 is a jolly.

### Re: 10038 - Jolly Jumpers WA

Posted: Sun Jun 08, 2014 10:32 pm
refatsardar wrote:Could you please tell me why 1 1 or 1 2 is a jolly. (..)
As the problem statement specifies, a sequence of n integers is a jolly jumper if:
• n > 0
• The set of integers formed by the absolute differences of successive elements is the same set as the integers { 1, 2, ..., (n-1) }
As you say, a sequence with n=1 has no successive elements, so that set is empty. On the other hand, the set { 1, ..., 0 } is also empty. Therefore, all the conditions are satisfied, and a sequence with n=1 is always jolly.

### Re: 10038 - Jolly Jumpers WA

Posted: Mon Jun 09, 2014 8:34 am