problem link: MATCHES Problem - CodeChef
my solution :
#include<iostream>
using namespace std;
enum Matches {One=2, Two=5, Three=5, Four=4,Five=5, Six=6, Seven=3, Eight=7, Nine=6, Zero=6 };
int main(){
int TestCases{0};
int noOfMatches{0};
cin>>TestCases;
int *Number1= new int(TestCases);
int *Number2= new int(TestCases);
int *Sum = new int(TestCases);
for (int i = 0; i < TestCases; i++) {
cin>>Number1[i]>>Number2[i];
}
for (int i = 0; i < TestCases; i++) {
Sum[i]=Number1[i]+Number2[i];
while(Sum[i]!=0){
switch (Sum[i]%10) {
case 0: noOfMatches+=Zero;
Sum[i]/=10;
break;
case 1: noOfMatches+=One;
Sum[i]/=10;
break;
case 2: noOfMatches+=Two;
Sum[i]/=10;
break;
case 3: noOfMatches+=Three;
Sum[i]/=10;
break;
case 4: noOfMatches+=Four;
Sum[i]/=10;
break;
case 5: noOfMatches+=Five;
Sum[i]/=10;
break;
case 6: noOfMatches+=Six;
Sum[i]/=10;
break;
case 7: noOfMatches+=Seven;
Sum[i]/=10;
break;
case 8: noOfMatches+=Eight;
Sum[i]/=10;
break;
case 9: noOfMatches+=Nine;
Sum[i]/=10;
break;
}
}
if(Sum[i]==0){
cout<<noOfMatches<<"\n";
noOfMatches=0;
}
}
delete [] Number1;
delete [] Number2;
delete [] Sum;
return 0;
}