CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;

int isIncreasingDecreasing(int* a,int n)
{
	bool f1=0,f2=0;

	if(n==1)return 1;

	for(int i=0;i<n-1;i++)
	{
		if(a[i]<a[i+1])f1=1;
		if(a[i]>a[i+1])f2=1;

	}

	if(f1==1 && f2==0)return 1;
	else if(f1==0 && f2==1)return 2;
	else return 3;

}

int main()
{
	int n; cin>>n;
	int a[n];

	for(int i=0;i<n;i++)cin>>a[i];

	cout<<isIncreasingDecreasing(a,n);






}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;

int isIncreasingDecreasing(int*A,int n){
int s1=0;
int s2=0;
for(int i=0;i<n-1;i++){
if(A[i]<A[i+1]) { s1++;}
}

for(int i=0;i<n-1;i++){
if(A[i]>A[i+1]){ s2++;}
}

if(s1==(n-1)) return 1;
else if(s2==(n-1)) return 2;
else return 3;
}

int main(){
int n;
cin>>n;
int A[n];

for(int i=0;i<n;i++){ cin>>A[i];}
 cout<<endl;
cout<<isIncreasingDecreasing(A,n);
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
void input_arr(int A[],int n)
{
for(int i=0;i<n;i++)
cin>>A[i];
}
int isIncreasingDecreasing(int A[],int n)
{
int i;
for(i=0;i<n-1;i++)
{
if(A[i]<A[i+1])
continue;
else break;
}
if(i==n-1)
return 1;
int j;
for(j=0;j<n-1;j++)
{
if(A[j]>A[j+1])
continue;
else break;
}
if(j==n-1)
return 2;
return 3;
}
int main()
{
int A[100];
int n;
cin>>n;
input_arr(A,n);
int ans=isIncreasingDecreasing(A,n);
cout<<ans;
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
 int isIncreasingDecreasing (int *A,int n) 
{
for(int i=0;i<n;i++)
{
if(A[i]<A[i+1])
{return 1;
} 
else if(A[i]>A[i+1])
{
return 2;
} else
{ return 3;
}
}
}

int main()
{
int n;
cin>>n;
cout<< isIncreasingDecreasing(int *A, int n);


}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: C
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int isIncreasingDecreasing (int *A, int n)
{
  int ctr1=0,ctr2=0;
  if(A[0]<A[1]&&A[n-2]<A[n-1])
  {
    for(int j=1;j<n-1;j++)
    {
      if(A[j]<A[j+1]&&A[j]>A[j-1])
      ctr1++;
    }
    if(ctr1==n-2)
    return 1;
  }
  else if(A[0]>A[1]&&A[n-2]>A[n-1])
  {
    for(int k=1;k<n-1;k++)
    {
      if(A[k]>A[k+1]&&A[k]<A[k-1])
      ctr2++;
    }
    if(ctr2==n-2)
    return 2;
  }
  else 
  return 3;   
}
int main()
{
  int val=0;
  int n;
  cin>>n;
  int A[n];
  for(int i=0;i<n;i++)
  cin>>A[i];
  val=isIncreasingDecreasing(A,n);
  cout<<val;
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int isIncreasingDecreasing(int *A,int n)
        {
int i=0;

 while(i<n){int k=i+1;
          if(A[i]<A[k]) i++;
           else return 3;
            }
         return 1;

while(i<n){int r=i+1;
            if(A[i]>A[r]) i++;
            else return 3;
    }return 2;}
int main(){
int n;
cin>>n;
int A[n];

for(int j=0; j<n; j++){
          cin>>A[j];
                       } 
int ans;
ans=isIncreasingDecreasing(A,n);
cout<<ans;
   }

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
#include<cmath>
using namespace std;
int isIncreasingDecreasing (int *A, int n){
bool flag=1;
for(int i=0;i<n-1;i++)
{
if(A[i]>A[i+1]){flag=0; break;}

}
if(flag){return 1;}
flag=1;
for(int i=0;i<n-1;i++)
{
if(A[i]<A[i+1]){flag=0; break;}

}
if(flag){return 2;}
else return 3;}


int main(){
int n;
cin>>n;
int arr[n];
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<isIncreasingDecreasing(arr,n);

}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <simplecpp>
void isIncreasingDecreasing(int *A, int n){
    int l;
    int i=0;
    int d=0;
    
  
   for (l=1; l<n; l++) {
        if (A[l] > A[l-1]) {
        i = i+1;
        }
        
        else if (A[l] < A[l-1]) {
        d = d+1;
        }
    }    
  
  
  if(i == (n-1)) cout << 1;
  else if (d == (n-1)) cout << 2;
  else cout << 3;
  

}

int main () {
   int m,k;
   cin >> m;
   
   int B[m];
   for (k=0;k<m;k++) {
   cin >> B[k];
   }
   
  isIncreasingDecreasing( B,  m);
    
   }

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
	int i,j;

int isIncreasingDecreasing (int *A, int n){
	for (int i=0;i<(n-1);i++)
	{
		if(A[i]<A[i+1]);
		return 1;
	}
	for(int j=0;j<(n-1);j++)
	{
		if(A[i]>A[i+1]);
		return 2;
	}
}
	


int main(){
	int a[100],N,x;
	cin>>N;
	for(int i=0;i<N;i++)
	{
		cin>>a[i];
	}
	x=isIncreasingDecreasing(a,N);
	if(x%11==0) return 1;
	else if(x%2==0) return 2;
	else return 3;
	
	
	
	

}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: C
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int is(int *a, int n) {
	int e=0, b=0, c=0;
	for (int i=n-1; i>0; i--) {
		if (a[i] > a[i-1]) {
			e++;
		}
		else if (a[i] < a[i-1]) {
			b++;
		}
		else {
			c++;
		}
	}
	if (e == n-1) {
		return 1;
	}
	else if (b == n-1) {
		return 2;
	}
	else {
		return 3;
	}
}
int main () {
	int n;
	cin >> n;
	int a[n];
	for (int p= 0; p <n ; p++) {
		cin >> a[p];
	}
	cout << is (a, n);
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
include<math>

using namespace std;

int main()
{
	 
	 int order (int B)

	  cout << size (B) << size (A);
	  
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: D
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;

int isIncreasingDecreasing (int *A, int n){
	bool inc=true, dec=true;
	for(int i=0;i<n-1;i++){
		if(A[i]>A[i+1]){
			inc=false;
		}
		if(A[i]<A[i+1]){
			dec=false;
		}
	}
	if(inc){return 1;}
	if(dec){return 2;}
	else {return 3;}
}

int main(){
	int n;
	cin>>n;
	int A[n];
	for(int i=0;i<n;i++)
		cin>>A[i];
	cout<<isIncreasingDecreasing(A, n);
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;

int isIncreasingDecreasing(int A[],int n){
 
	for(int i=0;i<n-1;i++){

	if (A[i]<=A[i+1]) ;
else break;

}
return 1;
}



for(int i=0;i<n-1;i++){

	if(A[i]>=A[i+1]) return 2;

else break;
}



 return 3;
}

int main(){
int n;
cin>>n;
int A[n];
for(int k=0;k<n;k++){
cin>>A[k];
}
cout<<isIncreasingDecreasing(A,n);
return 0;
}

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: C
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
#include<array>
using namespace std;

/*int bs(int* ar,int n)
{
  int copy[n];
  int flag=0;
  for(int i=0;i<n;i++)
  copy[i]=ar[i];
  
  for(int i=0;i<n-1;i++)
  {
    for(int j=0;j<n;j++)
    {
      if(ar[j]<ar[i])
       {
       int temp=ar[i];
       ar[j]=ar[i];
       ar[i]=temp;
      }
    }
    }
    
    
    for(int i=0;i<n;i++)
    {
     if(copy[i]==ar[i])
     flag=1;
     else
     {
     flag=0;
     break;
     }
     return flag;
     }
     }*/
     
     
     
     
     


int isIncreasingDecreasing (int* A,int n){
    int m=n;
    int a=0;
    for(int i=0;i<m;i++)
    {
    int j=i;
      //if(A[j]>A[i]){
      for(j=i;j<m;j++)
      {
        if(A[j]>A[i])
        {
        a=1;
        continue;
        }
        }
      //}
      //else if(A[j]<A[i])
      //{
         for(j=i;j<m;j++)
      {
        if(A[j]<A[i])
        {
        a=2;
        continue;
        }
        }
     
        }
     
        }
    
        
int main()
{
   int n;
   cin>>n;
   int A[n]={0};
   for(int k=0;k<n;k++)
   cin>>A[k];
   cout<<isIncreasingDecreasing(A,n);
   
   
   }

Grading criterion: Is the implementation able to correctly determine whether the array is in increasing order, decreasing order or any other
Rating A: Fully Correct
Rating B: Almost Correct
Rating C: Tried something in somewhat right direction. (eg implemented any one out of 3)
Rating D: Code is not there or totally wrong.
Assigned grade: C