请问山农大openjudgee怎么提交

2726:集合问题
总时间限制: 5000ms 内存限制: 65536kB
描述有一组正整数,总数不超过1000,其中最大值记为M。现要将它们划分成N个集合,使得每个集合的元素之和与M的差的绝对值的和最小。
集合A中当前各元素之和记为SUM(A),称为A的负荷;SUM(A)与M之差的绝对值称为A的负荷与理想负荷的偏差,简称为A的偏差。把这些整数划分成N个集合的方法是:按照从大到小的顺序,依次为每个整数分别选择一个集合;确定一个整数所属集合时,先计算各集合的负荷,将该整数分配给负荷最小的那个集合。
求使得各集合的偏差之和最小的划分方案中,集合的数目N。如果这样的方案不止一种,则输出各方案中,集合数最大的那种方案的集合数N。
输入共输入K+1个整数。其中第一个整数是K代表要划分的整数总数,后面依次是K个整数的值。K不超过1000。
输出一个整数,代表集合数N。
#include&iostream&
#include&cstdio&
#include&cstring&
#include&queue&
#include&cmath&
struct data
bool operator&(const data & a)const
return a.x&x;
};priority_queue&data&q;
priority_queue&int&p;
int n,i,j,k,maxn,num=,num1;
int a[1100];
int main()
scanf("%d",&n);
for (i=1;i&=n;i++)
scanf("%d",&a[i]);
for (i=1;i&=n;i++)
for (j=1;j&=n;j++)
p.push(a[j]);
maxn=p.top();
for (j=1;j&=i;j++)
int x1=p.top();
q.push(m);
for(j=i+1;j&=n;j++)
data x1=q.top();
y1.x=x1.x+p.top();
q.push(y1);
int ans=0;
for (j=1;j&=i;j++)
data m=q.top();
ans+=abs(m.x-maxn);
if (ans&num)
cout&&num1;
}//用一个大根堆维护元素集合,用一个小根堆维护sum(A);
2726:集合问题(3.7数据结构之堆)
最大K乘积问题:
没有更多推荐了,请问有人在openjudge上创建过小组吗,为什么发邮件过去迟迟得不到回复?【noi吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:4,192贴子:
请问有人在openjudge上创建过小组吗,为什么发邮件过去
请问有人在openjudge上创建过小组吗,为什么发邮件过去迟迟得不到回复?
我都发了一年了,也没见回复
贴吧热议榜
使用签名档&&
保存至快速回贴查看 提交 统计 提问
总时间限制: 1000ms 内存限制: 65536kB
你设计了一个新的加密技术,可以用一种聪明的方式在一个字符串的字符间插入随机的字符串从而对信息进行编码。由于专利问题,我们将不会详细讨论如何在原有信息中产生和插入字符串。不过,为了验证你的方法,有必要写一个程序来验证原来的信息是否全在最后的字符串之中。
给定两个字符串s和t,你需要判断s是否是t的“子列”。也就是说,如果你去掉t中的某些字符,剩下字符将连接而成为s。
输入包括多个测试样例。每一个都是由空格分隔的由字母数字ASCII字符组成的两个特定的字符串s和t。s和t的长度不超过100000。
对于每个测试样例,如果s是t的“子列”,则输出”Yes”,否则输出”No”
sequence subsequence
person compression
VERDI vivaVittorioEmanueleReDiItalia
caseDoesMatter CaseDoesMatter
Ulm Local 2002
#include&stdio.h&
bool isson(char s1[],char s2[])
int i = 0,j = 0,start = 0;
int nc = 0;
int state = 0;
for(i = 0; s1[i] != '\0';i++)
state = 0;
for(j = s2[j] != '\0'; j++)
if(s1[i] == s2[j])
start = j + 1;
state = 1;
if(nc == i)
int main()
char s1[100005],s2[100005];
while(~scanf("%s%s",s1,s2))
printf("%s\n",isson(s1,s2)?"Yes":"No");
没有更多推荐了,大连民族大学ACM/ICPC小组 聚集的是民大的ACM爱好者 我们相互学习 相互帮助 共同进步,努力提高自身及整个民大的ACM/ICPC竞赛水平
大家注册账号后,把昵称改为专业+班级+姓名,比如 计科144-xxx
大连民族大学ACM/ICPC}

我要回帖

更多关于 cqustopenjudge 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信