F-DPS
DPS
https://ac.nowcoder.com/acm/contest/5670/F
链接:https://ac.nowcoder.com/acm/contest/5670/F
来源:牛客网
题意:
给你n个数字,然后按照要求输出,主要是要注意向上取整等条件
我们将给的n个数记作a1,a2,a3...,其中maxn为其中最大的数
然后按照格式输出,如果maxn==ai,那么输出格式为
+------------+ | *|ai +------------+ 其中-的个数等于50*ai/maxn向上取整,空格个数是-号个数少一个,再输出*
如果不相等,那么
+--------+ | |ai +--------+ 其中空格和-的个数等于50*ai/maxn向上取整
#include<bits/stdc++.h> using namespace std; int n; int maxn,d[105]; int main() { cin>>n; maxn=0; for(int i=0;i<n;i++) { cin>>d[i]; maxn=max(d[i],maxn); } for(int i=0;i<n;i++) { int qaq=ceil(1.0*d[i]*50/maxn); if(d[i]==maxn)qaq--; printf("+"); for(int i=0;i<qaq;i++) printf("-"); if(d[i]==maxn)printf("-"); printf("+\n|"); for(int i=0;i<qaq;i++) printf(" "); if(d[i]==maxn)printf("*"); printf("|%d\n",d[i]); printf("+"); for(int i=0;i<qaq;i++) printf("-"); if(d[i]==maxn)printf("-"); printf("+\n"); } }