Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main() {
- FILE *fin = fopen("testdata.in", "r");
- int ntc = 0;
- fscanf(fin, "%d", &ntc);
- for (int tc = 0; tc < ntc; tc++) {
- int stack = 0;
- int blocks[105];
- int luas = 0;
- int keliling = 0;
- int tmpFirstBlock = 0;
- int tmpRightBlock = 0;
- int index = 1;
- fscanf(fin, "%d", &stack);
- for (int i = 0; i < stack; i++) {
- fscanf(fin, "%d", &blocks[i]);
- luas += 4 * blocks[i];
- }
- tmpFirstBlock = blocks[0];
- keliling += stack + blocks[0] + blocks[stack - 1] + stack;
- // printf("%d\n", keliling);
- for (int i = 1; i < stack - 1; i++) {
- tmpFirstBlock -= blocks[i];
- keliling += tmpFirstBlock;
- }
- // printf("%d\n", keliling);
- tmpRightBlock = blocks[stack - 2] - blocks[stack - 1];
- if (tmpRightBlock < 0) {
- keliling += tmpRightBlock * - 1;
- } else {
- keliling += tmpRightBlock;
- }
- // printf("%d\n", keliling);
- printf("Case #%d: %d %d\n", tc + 1, keliling * 2, luas);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement