Codeforces Round 65 B. Progress Bar(71)

https://codeforces.com/contest/71/problem/B

以上是本题地址,大家可以注册,然后在上面练习。

/*
A progress bar 进度条 is an element of graphical interface that displays the progress of a process for this very moment before it is completed.
Lets take a look at the following form of such a bar.

A bar is represented as squares 正方形, located in line.
To add clarity 为了更加清晰, let's number them with positive integers from 1 to z from the left to the right.

Each square has saturation 饱和度 (ai for the i-th square),
which is measured 度量 by an integer from 0 to k.
When the bar for some i is displayed,
squares 1,2,..., i- 1 has the saturation k,
squares i+1,i+2, ..., n has the saturation 0,
and the saturation of the square i can have any value from 0 to k.

So some first squares of the progress bar always have the saturation.
Some last squares always have the saturation 0.
And there is no more than one square that has the saturation different from 0 and k.

The degree of the process's completion is measured in percents.
Let the process be t% completed. Then the following inequation is fulfilled:

An example of such a bar can be seen on the picture.
n = 10, k = 10, t = 54
a: 10 10 10 10 10 4 0 0 0 0

For the given n, k, t determine the measures of saturation for all the squares ai of the progress bar.

Examples

Input

10 10 54

Output

10 10 10 10 10 4 0 0 0 0

Input

11 13 37

Output

13 13 13 13 0 0 0 0 0 0 0

*/

原题

分析:10,10,54 就显示5个10,1个4,其余0

公式 5 = (n*k * t%) / 整除 k

公式 4 = (n*k * t%) % 取余 k

从以上就可以知道,这个程序大概意思。

以下是本人写的代码(这次未参考别人),由于简单,所以一次成功!

Codeforces Beta Round 65 (Div. 2)

cpp 复制代码
/*
A progress bar is an element of graphical interface that displays the progress of a process 
 for this very moment before it is completed.
 
Lets take a look at the following form of such a bar.

A bar is represented as  squares, located in line.
To add clarity, let's number them with positive integers from 1 to z from the lett to the right. 

Each square has saturation (a; for the i-th square), 
which is measured by an integer from 0 to k. 
When the bar for some i is displayed, 
squares 1,2,..., i- 1 has the saturation k, 
squares i+1,i+2, ..., n has the saturation 0, 
and the saturation of the square i can have any value from 0 to k.

So some first squares of the progress bar always have the saturation.
Some last squares always have the saturation 0. 
And there is no more than one square that has the saturation different from 0 and k.

The degree of the process's completion is measured in percents. 
Let the process be t% completed. Then the following inequation is fulfilled:

An example of such a bar can be seen on the picture.
n = 10 k = 10 t = 54
a: 10 10 10 10 10 4 0 0 0 0

For the given n, k, t determine the measures of saturation for 
all the squares ai of the progress bar.

Examples
Input
10 10 54

Output
10 10 10 10 10 4 0 0 0 0

Input
11 13 37

Output
13 13 13 13 0 0 0 0 0 0 0
*/


#include <iostream>
using namespace std;

void cal_progress_bar(int n, int k, int t)
{
	int product = n*k;
	int c1 = 0;
	c1 = t*product*0.01;

	int number1 = 0;
	int number2 = 0;

	number1 = c1 / k;
	
	number2 = c1 % k;

	char space1 = ' ';
	for (int i = 0; i < number1; i++)
	{
		cout << k << space1;
	}
	
	int len = 0;
	if (number2>0)
	{
		cout << number2 << space1;
		len= n - number1 - 1;
	}
	else
	{
		len = n - number1;
	}

	for (int i = 0; i < len; i++)
	{
		cout << 0 << space1 ;
	}

}

int main()
{
	int n = 0, k = 0, t = 0;
	while (cin >> n >> k >> t)
	{
		cal_progress_bar(n, k, t);
	}
	return 0;
}
相关推荐
姓蔡小朋友31 分钟前
算法-滑动窗口
算法
君义_noip1 小时前
信息学奥赛一本通 2134:【25CSPS提高组】道路修复 | 洛谷 P14362 [CSP-S 2025] 道路修复
c++·算法·图论·信息学奥赛·csp-s
kaikaile19951 小时前
基于拥挤距离的多目标粒子群优化算法(MO-PSO-CD)详解
数据结构·算法
liulilittle1 小时前
OPENPPP2 Code Analysis One
网络·c++·网络协议·信息与通信·通信
不忘不弃1 小时前
求两组数的平均值
数据结构·算法
leaves falling1 小时前
迭代实现 斐波那契数列
数据结构·算法
珂朵莉MM2 小时前
全球校园人工智能算法精英大赛-产业命题赛-算法巅峰赛 2025年度画像
java·人工智能·算法·机器人
Morwit2 小时前
*【力扣hot100】 647. 回文子串
c++·算法·leetcode
天赐学c语言2 小时前
1.7 - 删除排序链表中的重要元素II && 哈希冲突常用解决冲突方法
数据结构·c++·链表·哈希算法·leecode
w陆压2 小时前
12.STL容器基础
c++·c++基础知识