Topcoder的题质量很高,所以我们要交它.
然而大家都知道topcoder的提交方式很奇怪,所以这里我写一个教程教大家如何提交.
在topcoder里如何提交
这个我真的不想解释.反正直接一写上去就可以了.
在vjudge里如何提交topcoder
我们来个例题.
Topcoder SRM 671 div.2 Level One : BearPaints
观察题面,可以看到题目定义.
所以你首先建立一个class.当然我们可以直接用struct,名称是BearPaints
.
struct BearPaints{
};
而里面你需要一个函数maxArea
,参数是int w,int h,long long m
.(别信他的long,我亲测long=int
),被坑了很久.
struct BearPaints{
/*参数的名字可以随意定,包括数组也能用vector,但是变量类型不能改变.*/
long long maxArea(int w,int h,long long m){
/*这个里面按照题目意思写出代码.*/
long long ans=0;
for (int i=1;i<=w;++i){
ans=max(ans,1ll*i*min(h*1ll,m/i));
}return ans;
}
};
注:头文件要加上,上面可以随意添加函数,定义全局变量,等等.
总之不要加main
函数,否则会ce.
那就很好办了.
#include<bits/stdc++.h> //Ithea Myse Valgulious
namespace chtholly{
typedef long long ll;
#define re0 register int
#define rec register char
#define rel register ll
#define gc getchar
#define pc putchar
#define p32 pc(' ')
#define pl puts("")
/*By Citrus*/
inline int read(){
int x=0,f=1;char c=gc();
for (;!isdigit(c);c=gc()) f^=c=='-';
for (;isdigit(c);c=gc()) x=(x<<3)+(x<<1)+(c^'0');
return f?x:-x;
}
template <typename mitsuha>
inline bool read(mitsuha &x){
x=0;int f=1;char c=gc();
for (;!isdigit(c)&&~c;c=gc()) f^=c=='-';
if (!~c) return 0;
for (;isdigit(c);c=gc()) x=(x<<3)+(x<<1)+(c^'0');
return x=f?x:-x,1;
}
template <typename mitsuha>
inline int write(mitsuha x){
if (!x) return 0&pc(48);
if (x<0) x=-x,pc('-');
int bit[20],i,p=0;
for (;x;x/=10) bit[++p]=x%10;
for (i=p;i;--i) pc(bit[i]+48);
return 0;
}
inline char fuhao(){
char c=gc();
for (;isspace(c);c=gc());
return c;
}
}using namespace chtholly;
using namespace std;
struct BearPaints{
ll maxArea(int W,int H,ll M){
ll ans=0;
for (int i=1;i<=W;++i){
ans=max(ans,1ll*i*min(H*1ll,M/i));
}return ans;
}
};
好,谢谢大家.