The Engineer's Thing






   Implementation







  Problem: Grading Students



Solve me



Solution:



int main(){
int n;
scanf("%d",&n);
for(int a0 = 0; a0 < n; a0++){
int grade,res;
scanf("%d",&grade);
res=grade%10;
if(res==3 && grade>37)
{
printf("%d\n",grade+2);
}
if(res==4 && grade>37)
{
printf("%d\n",grade+1);
}
if(res==8 && grade>37)
{
printf("%d\n",grade+2);
}
if(res==9 && grade>37)
{
printf("%d\n",grade+1);
}
if(res==1||res==2||res==5||res==6||res==7||res==0||grade<=37)
printf("%d\n",grade);
}
return 0;
}




  Problem:Apple and Orange



Solve me



Solution:




int main(){
int s;
int t;
scanf("%d %d",&s,&t);
int a;
int b;
scanf("%d %d",&a,&b);
int m;
int n;
scanf("%d %d",&m,&n);
int *apple = malloc(sizeof(int) * m);
int i,apples=0,oranges=0;
for(i = 0; i < m; i++){
scanf("%d",&apple[i]);
if(apple[i]>0 && (a+apple[i])>=s && (a+apple[i])<=t)
apples++;
}
int *orange = malloc(sizeof(int) * n);
for(i = 0; i < n; i++){
scanf("%d",&orange[i]);
if(orange[i]<0 && (b+orange[i])>=s && (b+orange[i])<=t)
oranges++;
}
printf("%d\n%d",apples,oranges);
return 0;
}






  Problem:Kangaroo



Solve me



Solution:




int main(){
int x1,step=0;
int v1;
int x2;
int v2;
scanf("%d %d %d %d",&x1,&v1,&x2,&v2);
if(v1 > v2 && !((x2-x1)%(v1-v2)))
printf("YES");
else
printf("NO");
return 0;
}





  Problem:Between Two Sets



Solve me



Solution:



int main() {
int n;
int m,i,j,k,flag=0,tag=0,num=0;
scanf("%d %d",&n,&m);
int *a = malloc(sizeof(int) * n);
for(int a_i = 0; a_i < n; a_i++)
{
scanf("%d",&a[a_i]);
}
int *b = malloc(sizeof(int) * m);
for(int b_i = 0; b_i < m; b_i++)
{
scanf("%d",&b[b_i]);
}
for(k=1;k<=100;k++)
{
for(i=0;i {
if(k%a[i]==0)
flag=1;
else
{ flag=0;
break;
}
}
if(flag==1)
{
for(j=0;j {
if(b[j]%k==0)
tag=1;
else
{ tag=0;
break;
}
}
if(tag==1)
{// printf("%d ",k);
num++;}
}
}
printf("%d",num);
return 0;
}





  Problem:Divisible Sum Pairs



Solve me



Solution:



int count=0,d,j,l,i,sum=0;
int main(){
int n;
int k;
scanf("%d%d",&n,&k);
int *a=malloc(sizeof(int) *n);
for(i=0;i {
scanf("%d",&a[i]);
}
for(j=0;j {
for(l=j+1;l {
if((a[j]+a[l])%k==0)
{
count++;
}
}
}
printf("%d",count);
return 0;
}






  Problem:Migratory Birds



Solve me



Solution:



int main() {
int max;
int size, i;
scanf("%d", &size);
int a[size];
int item;
int b[200000]={0};
for(i = 0; i < size; i++) {
scanf("%d", &item);
a[i] = item;
b[item]=b[item]+1;
}
max=0;
int max1=0;
for(i=0;i {
if(b[i]>max)
{
max=b[i];
max1=i;
}
}
printf("%d",max1);
return 0;
}






  Problem:Bon Appetit



Solve me



Solution:



int main() {
int i;
int n,k,b=0;
scanf("%d%d",&n,&k);
int c[n];
for(i=0;i {
scanf("%d",&c[i]);
}
int b_charged,cost=0;
scanf("%d",&b_charged);
int b_actual=0;
for(i=0;i {
b=b+c[i];
}
b_actual=(b-c[k])/2;
if(b_actual==b_charged)
{
printf("Bon Appetit");
}
else
{
cost=b_charged-b_actual;
printf("%d",cost);
}
return 0;
}






  Problem:Sock Merchant



Solve me



Solution:



int main(){
int n,count=0;
scanf("%d",&n);
int *s = (int *)calloc(100,sizeof(int));
for(int c_i = 0; c_i < n; c_i++){
int c;
scanf("%d",&c);
s[c]++;
if(s[c]%2 == 0){
s[c]=0;
count++;
}
}
printf("%d",count);
return 0;
}






  Problem:The Hurdle Race



Solve me



Solution:



int main(){
int n;
int k,max=0,res;
scanf("%d %d",&n,&k);
int *height = malloc(sizeof(int) * n);
for(int height_i = 0; height_i < n; height_i++){
scanf("%d",&height[height_i]);
if(height[height_i]>max)
max=height[height_i];
}
if(max>k)
{
res=max-k;
printf("%d",res);
}
else
printf("%d",0);
// your code goes here
return 0;
}





  Problem:Designer PDF Viewer



Solve me



Solution:



int main(){
int h[26];
int i,max=0,len,letter,size;
for(i = 0; i < 26; i++){
scanf("%d",&h[i]);
}
char* word = (char *)malloc(512000 * sizeof(char));
scanf("%s",word);
len=strlen(word);
for(i=0;i<=len;i++)
{
letter=word[i]-97;
size=h[letter];
if(size>max)
{
max=size;
}
}
printf("%d",len*max);
return 0;
}





  Problem:Utopian Tree



Solve me



Solution:



int main(){
int t,i,h=1;
scanf("%d",&t);
for(int a0 = 0; a0 < t; a0++){
int n;
scanf("%d",&n);
i=1;
while(i<=n)
{
if(i%2==1)
{
h=h*2;
}
else
{
h++;
}
i++;
}
printf("%d",h);
printf("\n");
h=1;
}
return 0;
}





  Problem:Angry Professor



Solve me



Solution:



int main(){
int t,a0,a1,arr[10000],count=0;
scanf("%d",&t);
for(int a0 = 0; a0 < t; a0++){
int n;
int k;
scanf("%d %d",&n,&k);
for(a1=0;a1 {
scanf("%d",&arr[a1]);
}
for(a1=0;a1 {
if(arr[a1]<0||arr[a1]==0)
count++;
}
if(count printf("YES");

printf("NO");
printf("\n");
count=0;
}
return 0;
}





  Problem:Beautiful Days At the Movies



Solve me



Solution:



int revv(int a)
{
int sum=0,rem;
while(a>0)
{
rem=a%10;
a=a/10;
sum=(sum*10)+rem;

}
return sum;
}


int main() {
int i,j,k;
int count=0;
int a,rem,sum1=0,res=0,temp,res1=0;
scanf("%d%d%d",&i,&j,&k);
for(a=i;a<=j;a++)
{
temp=a;
rem=0;
res=0;
res1=0;
sum1=revv(a);
res=abs(temp-sum1);
res1=res%k;
if(res1==0)
{
count++;
}
}
printf("%d",count);
return 0;
}





  Problem:Viral Advertising



Solve me



Solution:



int main()
{
int n,i,j;
j=5;
scanf("%d",&n);
int result=0;
for(i=1;i<=n;i++)
{
result=result+j/2;
j=j/2*3;
}
printf("%d",result);
return 0;
}





  Problem:Save the prisoner!



Solve me



Solution:



int main() {
int t,n,m,s,result,i;
scanf("%d",&t);
for(i=0;i {
scanf("%d%d%d",&n,&m,&s);
result=(m+s-1)%n;
if(result==0)
printf("%d",n);
else
printf("%d",result);
printf("\n");
}
return 0;
}





  Problem:Jumping on the clouds:revisited



Solve me



Solution:



int main(){
int n,i;
int k,count=0;
int e=100;
scanf("%d %d",&n,&k);
int *c = malloc(sizeof(int) * n);
for(i = 0; i < n; i++){
scanf("%d",&c[i]);
}
for(i=0;i {
if(c[i]==1)
count++;
}
if(count==n && k==1)
{
printf("%d",100-n*3);
}
else
{
for(i=k;i%n!=0;i=i+k)
{
if(c[i]==0)
{
e=e-1;
}
else
{
e=e-3;
}
}
if(k==n )
{
printf("%d",e-3);
}
else
{
printf("%d",e-1);
}
return 0;
}
}





  Problem: Find Digits



Solve me



Solution:



int main(){
int t,n,d,i,count=0,l;
scanf("%d",&t);
for(i=0;i {
scanf("%d",&n);
l=n;
count=0;
while(n)
{
d=n%10;
n=n/10;
if(d && l%d==0)
count++;
}
printf("%d",count);
printf("\n");
}
return 0;
}





  Problem: Sherlock and squares



Solve me



Solution:



int main() {
int i,j,t;
long int m,n,a,b,count=0;
scanf("%d",&t);
for(i=0;i {
scanf("%ld%ld",&m,&n);
a=ceil(sqrt(m));
b=floor(sqrt(n));
for(j=a;j<=b;j++)
{
count++;
}printf("%ld",count);
printf("\n");
count=0;
}
return 0;
}





  Problem: Library Fine



Solve me



Solution:



int main(){
int d1;
int m1;
int y1;
scanf("%d %d %d",&d1,&m1,&y1);
int d2;
int m2;
int y2;
scanf("%d %d %d",&d2,&m2,&y2);
int fine=0;
if(d1>d2 && m1==m2)
{
fine=15*(d1-d2);
}
if(m1>m2 && y1<=y2)
{
fine=500*(m1-m2);
}
if(y1>y2)
{
fine=10000;
}
if(y1 fine=0;
printf("%d",fine);
return 0;
}





  Problem: Cut the sticks



Solve me



Solution:



int main(){
int n,i,count=0,j,temp,m;
scanf("%d",&n);
int a[n];
for(i = 0; i < n;i++){
scanf("%d",&a[i]);
}
printf("%d\n",n);
for(i=0;i
{
for(j=i+1;j {
if(a[i] {
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
if(a[0]==1)
{
return n;
}
else{
while(a[1])
{
for(i=0;i {
a[i]=a[i]-a[n-1];
}
for(i=0;i {
if(a[i]!=0)
{
count++;
}
}
if(count==0)
break;
else
{
printf("%d",count);
printf("\n");
}
m=count;
n=m;
count=0;

}
}
return 0;
}





  Problem: Repeated String



Solve me



Solution:



int main(){
char s[100];
scanf("%s",s);
long long int i,n,lenth,b,c,h,count=0,count1=0;
scanf("%lld",&n);

lenth=strlen(s);

b=n/lenth;

c=n%lenth;

for(i=0;i if(s[i]=='a'){
count++;
}
}
h=count*b;
for( i=0;i if(s[i]=='a'){
count1++;
}
}
h=h+count1;
printf("%lld",h);

return 0;
}





  Problem: Jumping on the clouds



Solve me



Solution:



int main(){
int n,i,count=0,j=0;
scanf("%d",&n);
int *a = malloc(sizeof(int) * n);
for(i = 0; i < n; i++){
scanf("%d",&a[i]);
}
while(j {
if(a[j+2]!=1 && j {
j=j+2;
count++;
}
else{
j=j+1;
count++;
}
}
printf("%d",count);

return 0;
}





  Problem: Equalize the array



Solve me



Solution:



int main() {
int n,a[100],j;
int i,count=0,count1=0;
scanf("%d",&n);
for(i=0;i {
scanf("%d",&a[i]);
}
for(i=0;i {
count=0;
for(j=0;j {
if(a[i]==a[j])
count++;
}
if(count1 count1=count;
}
printf("%d",n-count1);
return 0;
}