Can you explain the code in C language step by step (especially the perimeter part). Thx Sir.
Ice Cubes
Jojo is playing with ice cubes. He puts some ice cube sized 2×2×2 on a table. He wanted to make N stacks adjecent to each other stacks with
Xi cubes for the ith stack. Jojo is curious how much is the perimeter and area of the stacks given Jojo is looking at the stacks from the front in 2-dimentional form. Help Jojo calculate the perimeter and the area.
Format Input
The input will consist of several lines of input in ”testdata.in” file. First consists of T, the number of test cases. For each testcase consists of integer N, the number of stacks. The next line consists of the N integer, the number Xi for the ith stack.
Format Output
Output should be expressed in format ”Case #X: Y1 Y2” - X is the number of the test case, and followed by Y1 and Y2 - The perimeter and the area of the test case.
Constraints
• 1 ≤ T ≤ 100
• 1 ≤ N ≤ 100
• 1 ≤ Xi ≤ 100
Sample Input (testdata.in)
1
3
2 1 3
Sample Output (standard output)
Case #1: 28 24
Hello Sir. Can you explain the code in C language step by step (especially the perimeter part). Thx Sir.
#include<stdio.h>
int main(){
int tc, N, ice[111], perimeter, area;
int a,b;
FILE *file;
file = fopen("testdata.in", "r");
fscanf(file, "%d\n", &tc);
for(a=1; a<=tc; a++){
area = 0; perimeter = 0;
fscanf(file, "%d\n", &N);
for(b=0; b<N; b++){
fscanf(file, "%d", &ice[b]);
}
for(b=0; b<N; b++){
perimeter = perimeter + (8*ice[b] - (4*(ice[b]-1)));
area = area + (4*ice[b]);
if(b != N-1){
if(ice[b] <= ice[b+1]){
perimeter=perimeter - (4*ice[b]);
}
else{
perimeter=perimeter - (4*ice[b+1]);
}
}
}
printf("Case #%d: %d %d\n", a, perimeter, area);
}
return 0;
}

Trending now
This is a popular solution!
Step by step
Solved in 2 steps









