传智播客推出了一款课程,并进行了一次促销活动。具体来说就是,课程的初始定价为 元;每报名 个学员,课程的定价就要提升 元。由于课程能够容纳的学生有限,因此报名到 人的时候就停止报名。
现在老师想知道,当课程停止报名时,一共可以获得多少学费呢?
一行四个使用空格隔开的整数,分别为 。
一行一个整数,表示答案。
5 1 1 1
15
每卖出 个课程,价格就会提高 元,所以总共获得 元。
对于 的数据,满足 ;
对于额外 的数据,满足 ;
对于 的数据,满足 。
然而,由于本次比赛是 ACM 赛制,因此您必须通过 的数据才能够获得本题的得分,后题同。
答案
#include "stdio.h"
#include "math.h"
main()
{
int n,v,m,a;
int sum=0,i,sn=0,j=1;
scanf("%d %d %d %d",&n,&v,&m,&a);
sn=v;
for(i=1;i<=n;i++)
{
if(i==1+j*m)
{
sn+=a;
sum+=sn;
j++;
}else{
sum+=sn;
}
}
printf("%d",sum);
}
#include "stdio.h"
struct gz{
int t,k;
int sum;
};
main()
{
struct gz ren[50000];
int i,j,n,bx[50000],max,m,k=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d %d",&ren[i].t,&ren[i].k);
ren[i].sum=ren[i].k*ren[i].t;
}
for(i=0;i<n;i++)
{
max=-1;
m=-1;
for(j=0;j<n;j++)
{
if(max<ren[j].sum)
{
max=ren[j].sum;
m=j;
}else if(max==ren[j].sum&&ren[m].t<ren[j].t)
{
max=ren[j].sum;
m=j;
}
}
bx[k]=m+1;
ren[m].sum=0;
k++;
}
for(i=0;bx[i]!='\0';i++)
{
printf("%d ",bx[i]);
}
}
YYH Land(Yoauld,Youthful & Happy Land) 是位于炽蓝仙野的一片神奇的国度,那里的人们过着无拘无束的的快乐生活。
哈兰·斯威提是 YYH Land 远近闻名的注铅骰子爱好者。有一天他碰到了这么一个问题:
你有一枚 个面的骰子,分别写了 ,每一面朝上的概率是均等的。
现在哈兰想知道,如果他投掷 次,并且将结果按顺序写在纸上成为一个数。(比如说如果哈兰扔了 次,分别是 ,那么他最后得到的数就是 )他现在想知道这个数是 的倍数的可能情况有多少种,其中 是一个特定的数。
由于这个方案数可能会很大,所以请你输出结果对 取模的结果。
一行两个整数 ,意义如题所示。
一行一个整数,表示答案。
2 11
6
样例解释
在投掷两次骰子总共 种可能中,只有 是符合条件的。所以答案是 。
数据规模与约定
对于 的数据,满足 分别为 ;
对于另外 的数据,满足 ;
对于 的数据,满足 ;
有一天您厌烦了电脑上又丑又没用的终端,打算自己实现一个 Terminal。
具体来说,它需要支持如下命令:
touch filename
:如果名为 filename
的文件不存在,就创建一个这样的文件,如果已经存在同名文件的话则不进行任何操作。
rm name
:删除名为 name
的文件。如果不存在这样的文件,就不进行任何操作。
ls
:按创建时间为顺序,显示当前已经存在的未被删除的所有文件。
rename xxx yyy
:将名为xxx
的文件名字改为 yyy
。如果不存在这样的文件,或者已经存在文件名为 yyy
的文件,则不做任何操作。
这里所有涉及的文件名都仅由大写或者小写的英文字母构成,且文件名区分大小写。
第一行一个整数 ,表示总共要执行的操作数。
接下来 行,每行一个字符串,表示一条命令。
对于每个 ls
命令,请输出若干行,每行一个字符串,表示一个文件,如果当前并没有任何文件,则什么都不输出。
请注意本题时限为 3s,输入输出规模较大,请注意常数因素对耗时的影响,我们不会给使用 Java 和 Python 的选手增加额外的运行时间。
6 touch yyh touch yyhtql rename yyh yyhnb touch qwq rename qwq qaq ls
yyhnb yyhtql qaq
对于 的数据,只存在 操作
对于另外 的数据,只存在 操作
对于另外 的数据,只存在 操作
对于 的数据,满足
保证所有命令的长度不超过 个字符。
传智专修学院总共召集了 位志愿者来负责打扫活动,现在需要你负责帮忙统计每位志愿者的工作情况,用来制作光荣榜,给他们发小花花。
第 位志愿者有一个工作时长 ,以及他负责的工作的难度系数 ,一名志愿者的贡献度可以用 确定。
现在要为这些志愿者的贡献度从大到小排个序,请你完成这个任务。相同贡献度的志愿者以工作时长较长的排在前面。如果贡献和时长一样,那么编号小的志愿者排在前面。
一行一个整数 ,表示志愿者的数量。
接下来 行,每行两个使用空格隔开的整数 ,表示第 名志愿者的时间和难度系数。
一行,共 个整数,第 个数表示排名为 的志愿者的序号,从 开始编号。
请注意本题时限为 5s,输入输出规模较大,请注意常数因素对耗时的影响,我们不会给使用 Java 和 Python 的选手增加额外的运行时间。
3 1 2 2 3 3 4
3 2 1
对于 的数据,满足 ;
对于额外 的数据,满足 ;
对于 的数据,满足 。
然而,由于本次比赛是 ACM 赛制,因此您必须通过 的数据才能够获得本题的得分,后题同。
传智专修学院的 Java 程序设计课程的评价体系是这样的:
首先,所有学生会有一个卷面得分,这个得分一定是一个 之间的整数。
如果卷面得分在 分以上,那么他的 GPA(加权平均成绩) 就是满分 。
如果卷面得分在 之间,那么他每比 分少 分,那么他的分数就会在 的基础上减少 。
如果卷面得分不到 分,那么善良的老师会给他照顾。具体来说,如果他的分数为 ,那么老师会把他的分数调整为 (向下取整) ,再计算他的 GPA。
如果经过调整该学生的得分依旧没满 ,那么他就挂科了,GPA 就是 分。
现在给你一个人的期末卷面得分,请你输出他的最终 GPA
一行一个整数 ,表示该人的期末得分。
一个小数点后只有一位的浮点数,表示该同学获得的GPA。
请注意,如果有 请保留。
99
4.0
88
3.8
12
0.0
对于 的数据,满足 ;
对于额外 的数据,满足 ;
对于 的数据,满足 。
#include "stdio.h"
#include "math.h"
main()
{
int x,i;
float sum;
scanf("%d",&x);
sum=4.0;
if(x>=90)
{
sum=4.0;
}else if(x>=60&&x<90)
{
for(i=89;i>=x;i--)
{
sum=sum-0.1;
}
}else if(x>=0&&x<60)
{
x=(int)(sqrt(x)*10);
if(x>=90)
{
sum=4.0;
}else if(x>=60&&x<90)
{
for(i=89;i>=x;i--)
{
sum=sum-0.1;
}
}else{
sum=0;
}
}
printf("%0.1f",sum);
return 0;
}