CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

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

int main(){
    bool A_newcode,A_debug,A_optimize,B_newcode,B_debug,B_optimize;
    cin >> A_newcode >> A_debug >> A_optimize;
    cin >> B_newcode >> B_debug >> B_optimize;
    if ((A_newcode && B_newcode)&&(A_debug||B_debug)&&(A_optimize||B_optimize))
    cout<< "compatible";
    else
    cout<< "not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    bool newcode1,debug1,optimize1,newcode2,debug2,optimize2;
    cin>>newcode1>>debug1>>optimize1>>newcode2>>debug2>>optimize2;
    if((newcode1 && newcode2) && (debug1 || debug2) && (optimize1 || optimize2)){
        cout<<"compatible";
    }
    else cout<<"not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    int a,b,c;
    cin>>a>>b>>c;
    int z=0;
    int e,f,g;
    cin>>e>>f>>g;
    if(g==0 && c==0){
        z=0;
    }
    else {
        z++;
    }
    
    if(b==0 && f==0){
        z=0;
    }
    else {
        z++;
    }
    if(a==1 && b==1){
        z++;
    }
 
    if(z==3){
        cout<<"compatible"<<endl;
    }
    else{
        cout<<"not compatible"<<endl;
    }    
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<iostream>
using namespace std;
int main(){
    int nc1,nc2,d1,d2,o1,o2;
    cin>>nc1>>d1>>o1;
    cin>>nc2>>d2>>o2;
    
    if((nc1==1 && nc2==1) && (d1==1 || d2==1) && (o1==1 || o2==1))
    cout<<"compatible";
    else
    cout<<"not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>
main_program{
    int n;
    int z;
    cin >> n, z ;
    int x=1;
    int y=0;
    if (n=z=x){cout<<"compatible";}
    else if (n!=z){ cout<< " not compatible";}
    else if(n=z=y){cout<<"compatible";}
    else {
        cout<< " not compatible";
    }
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: C
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>

main_program{
	int a1, a2, a3, b1, b2, b3;
	cin>>a1>>a2>>a3;
	cin>>b1>>b2>>b3;
	bool is_comp = true;
	if(a1 == 0 || b1 == 0)
		is_comp = false;
	else if(a2 == 0 && b2 == 0)
		is_comp = false;
	else if(a3 == 0 && b3 == 0)
		is_comp = false;

	if(is_comp)
		cout<<"compatible";
	else
		cout<<"not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    bool a1,a2,a3,b1,b2,b3; //a1,a2,a3 be newcode,debugging,optimizing respectively for first progammer and similar for second
    cin>>a1>>a2>>a3;
    cin>>b1>>b2>>b3;
    if ( (a1&b1) & (a2|b2) & (a3|b3)){ //all 3 conditions satisfied simultaneously as per question
        cout<<"compatible";
    }
    else{
        cout<<"not compatible";
    }
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    int a,b,c,d,e,f;
    cin>>a>>b>>c>>d>>e>>f;
    if((a==1 && b== 1 )&& (c==1||c==0||d==1||d==0 )&& (e==1||e==0||f==1||f==0))
    cout<<"compatible";
    else if( a==0 || b==0)
    cout<< "not compatible ";
    
    
   
    
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

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

int main () {
    int nA, dA, oA;
    int nB, dB, oB;
    cin >> nA >> dA >> oA;
    cin >> nB >> dB >> oB;
    if ((nA == 1 && nB == 1 ) && (dA == 1 || dB == 1) && (oA == 1 || oB ==1)){
        cout << "compatible";
    }
    else {
        cout << "not compatible";
    }
    return 0;

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    int ncode1,ncode2,debug1,debug2,optimal1,optimal2;
    cin>>ncode1>>debug1>>optimal1>>ncode2>>debug2>>optimal2;
    if(ncode1==1 && ncode2==1){
        if((debug1==1 || debug2==1) && (optimal1==1 || optimal2==1)){
           cout<<"compatible";
        }
        else cout<<"not compatible";
    }
    else cout<<"not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{

int a,b,c,d,e,f;
cin>>a>>b>>c;
cin>>d>>e>>f;

if( c== 0 && f==0){
    cout<<"not compatible";
}

else if ( c==1 || f ==1 ){
    if (b==0 && e ==0){
        cout<<"not compatible";}
    else if (b==1 || e==1){
        if ( a== 1 && d==1){
            cout<<"compatible";}
        else if(a==0 || d== 0){
            cout<<"not compatible";}
    }
}









}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>

main_program{
	bool nCodeA, nCodeB, dbA, dbB, optA, optB; 
	cin>>nCodeA>>dbA>>optA>>nCodeB>>dbB>>optB;
	if ((nCodeA && nCodeB) && (optA || optB) && (dbA || dbB)) cout<< "compatible";
	else cout<<"not compatible";
}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program
{
    int na, da, oa;
    int nb, db, ob;
    cin>>na>>da>>oa;
    cin>>nb>>db>>ob;
    if((na==1 && nb==1) && (da==1 || db==1) && (oa==1 || ob==1))
    {
        cout<<"compatible";
    }
    else
        cout<<"not compatible";

}

Grading criterion: Accepting input
Rating A: Correctly accepts the six inputs
Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A