阅读343 返回首页    go 阿里云 go 技术社区[云栖]


HDU4716-A Computer Graphics Problem

A Computer Graphics Problem

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 693    Accepted Submission(s): 522


Problem Description
In this problem we talk about the study of Computer Graphics. Of course, this is very, very hard.
We have designed a new mobile phone, your task is to write a interface to display battery powers.
Here we use '.' as empty grids.
When the battery is empty, the interface will look like this:
*------------*
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
*------------*

When the battery is 60% full, the interface will look like this:
*------------*
|............|
|............|
|............|
|............|
|------------|
|------------|
|------------|
|------------|
|------------|
|------------|
*------------*

Each line there are 14 characters.
Given the battery power the mobile phone left, say x%, your task is to output the corresponding interface. Here x will always be a multiple of 10, and never exceeds 100.
 

Input
The first line has a number T (T < 10) , indicating the number of test cases.
For each test case there is a single line with a number x. (0 < x < 100, x is a multiple of 10)
 

Output
For test case X, output "Case #X:" at the first line. Then output the corresponding interface.
See sample output for more details.
 

Sample Input

2 0 60
 

Sample Output

Case #1: *------------* |............| |............| |............| |............| |............| |............| |............| |............| |............| |............| *------------* Case #2: *------------* |............| |............| |............| |............| |------------| |------------| |------------| |------------| |------------| |------------| *------------*
 

Source
2013 ACM/ICPC Asia Regional Online —— Warmup2
 


 

偷懒水一题......

#include<stdio.h>
#include<string.h>
char a[50][50];
int main()
{
    int i,j,n,m,num,k=1;
    scanf("%d",&n);
    while(n--)
    {
       scanf("%d",&m);
       memset(a,0,sizeof(a));
       num=10-(m/10)+1;
       for(i=0;i<12;i++)
       {
           for(j=0;j<14;j++)
           {
             if(i==0||i==11)
             {
               if(j==0||j==13)
               a[i][j]='*';
               else
               a[i][j]='-';
             }
             else 
             if(j==0||j==13)
             {
                a[i][j]='|'; 
             }
             else
             {
                 if(num>0)
                 {
                   a[i][j]='.';
                 }
                 else
                 a[i][j]='-';
             }
           }
           num--;
       }
       printf("Case #%d:\n",k++);
       for(i=0;i<12;i++)
       {
          for(j=0;j<14;j++)
          printf("%c",a[i][j]);
          puts("");
       }
    }
    return 0;
}


 

最后更新:2017-04-03 12:56:09

  上一篇:go Linux 下压缩与解压.zip和.rar及.7z文件
  下一篇:go Pig源码分析: 逻辑执行计划优化