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.
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)
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.
See sample output for more details.
Sample Input
2
0
60
Sample Output
Case #1:
*------------*
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
|............|
*------------*
Case #2:
*------------*
|............|
|............|
|............|
|............|
|------------|
|------------|
|------------|
|------------|
|------------|
|------------|
*------------*
Source
偷懶水一題......
#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