日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

江西理工大学c语言程序设计竞赛怎么备考,2015年江西理工大学C语言程序设计竞赛(高级组)...

發(fā)布時間:2025/3/19 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 江西理工大学c语言程序设计竞赛怎么备考,2015年江西理工大学C语言程序设计竞赛(高级组)... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

A

解法:DP+二分

dp[i]=max(dp[i],dp[j]+p[i].v)(i>j)

dp[i]表示建立i點之后能夠獲得的最大值

int n,M;

struct node

{

int l,v;

}p[1010];

int dp[1010];

bool cmp(node a,node b){

return a.l < b.l;

}

bool judge_oo(){

int Max = -1;

for(int i = 1;i <= n;i++) Max = max(Max,p[i].v);

if(Max >= M) return 1;

return 0;

}

bool judge_no(){

int sum = 0;

for(int i = 1;i <= n;i++) sum += p[i].v;

if(sum >= M) return 0;

return 1;

}

bool judge_DP(int L){

memset(dp,0,sizeof dp);

for(int i = 1;i <= n;i++){

for(int j = 0;j < i; j++){

if(p[i].l - p[j].l >= L){

dp[i] = max(dp[i],dp[j] + p[i].v);

}

}

}

int ML = 0;

for(int i = 1;i <= n;i++) ML = max(ML,dp[i]);

if(ML >= M) return 1;

return 0;

}

int solve(int L,int R){

while(L + 1 < R){

int mid = (L + R)/2;

if(judge_DP(mid)) L = mid;

else R = mid;

}

return L;

}

int main(int argc, char *argv[])

{

//freopen("data.in","r",stdin);

//freopen("data.out","w",stdout);

int T;

cin >> T;

while(T--){

cin >> n >> M;

for(int i = 1;i <= n;i ++)

cin >> p[i].l >> p[i].v;

if(judge_no()){

puts("-1");

continue;

}

if(judge_oo()){

puts("oo");

continue;

}

sort(p+1,p+n+1,cmp);

p[0].l = -100000000 , p[0].v = 0;

int L = 1 , R = p[n].l;

cout << solve(L,R) << endl;

}

return 0;

}

B

解法:模擬。字符串模擬

#include

//#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define inf 0x3fffffff

#define INF 0x3f3f3f3f

#define lson l,m,rt<<1

#define rson m+1,r,rt<<1|1

#define LL long long

#define ULL unsigned long long

using namespace std;

int i,j;

int n,m;

int num_1,num_2;

int t;

int sum,ans,flag;

string s_1,s_2,s_3;

string sss;

string ss[10000];

string c;

mapq1;

mapq2;

int main()

{

cin>>t;

while(t--)

{

cin>>n>>c;

num_1=0;

for(i=0; i

{

cin>>sss;

ans=sss.find(".");

s_1=sss.substr(0,ans);

s_2=sss.substr(ans+1,sss.length());

if(s_2==c)

{

int ans_2=sss.find("(");

int ans_3=sss.find(")");

if((ans_2!=-1&&ans_2

{

// num_1++;

ss[num_1++]=sss.substr(0,ans_2);

// cout<

}

else if(ans_2==-1||ans_3==-1)

{

// num_1++;

ss[num_1++]=sss.substr(0,ans);

// cout<

}

}

}

for(i=0; i

{

// cout<

}

// cout<

for(i=0; i

{

q1[ss[i]]++;

}

for(i=0; i

{

if(q2[ss[i]]==0)

{

q2[ss[i]]=1;

if(q1[ss[i]]==1)

{

cout<

}

else

{

cout<

}

}

}

q1.clear();

q2.clear();

}

return 0;

}

C

解法:樹狀數(shù)組尋找逆序?qū)?#43;預處理

#include

#include

#include

#include

#include

using namespace std;

const int M = 200010;

long long ans[M + 10];

int G[M + 10],c[M + 10];

int Lowbit(int x)

{

return x & (-x);

}

void Insert(int x,int d)

{

while(x<=M){

c[x]+=d;

x+=Lowbit(x);

}

}

int Sum(int x)

{

int sum=0;

while(x>0){

sum+=c[x];

x-=Lowbit(x);

}

return sum;

}

void init()

{

memset(G,-1,sizeof G);

memset(ans,0,sizeof ans);

memset(c,0,sizeof c);

G[1] = 1;

for(int i = 2; i <= 200100;i++){

if(G[i] == -1){

for(int j = i;j <= 200100;j += i){

if(G[j] == -1){

G[j] = i;

}

}

}

}

for(int i=1;i<=200005;i++)

{

Insert(G[i],1);

ans[i] = ans[i-1] + (i-Sum(G[i]));

}

}

int main()

{

init();

int t;

cin>>t;

while(t--)

{

int n;

cin>>n;

cout<

}

return 0;

}

D

解法:模版題,最小覆蓋圓

#include

#include

#include

#include

using namespace std;

const double eps=1e-8;

struct Point{

double x,y;

}p[505];

double dis(const Point &a,const Point &b)

{

return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));

}

Point circumcenter(const Point &a,const Point &b,const Point &c)

{ //返回三角形的外心

Point ret;

double a1=b.x-a.x,b1=b.y-a.y,c1=(a1*a1+b1*b1)/2;

double a2=c.x-a.x,b2=c.y-a.y,c2=(a2*a2+b2*b2)/2;

double d=a1*b2-a2*b1;

ret.x=a.x+(c1*b2-c2*b1)/d;

ret.y=a.y+(a1*c2-a2*c1)/d;

return ret;

}

void min_cover_circle(Point *p,int n,Point &c,double &r){ //c為圓心,r為半徑

random_shuffle(p,p+n); //

c=p[0]; r=0;

for(int i=1;i

{

if(dis(p[i],c)>r+eps) //第一個點

{

c=p[i]; r=0;

for(int j=0;j

if(dis(p[j],c)>r+eps) //第二個點

{

c.x=(p[i].x+p[j].x)/2;

c.y=(p[i].y+p[j].y)/2;

r=dis(p[j],c);

for(int k=0;k

if(dis(p[k],c)>r+eps) //第三個點

{//求外接圓圓心,三點必不共線

c=circumcenter(p[i],p[j],p[k]);

r=dis(p[i],c);

}

}

}

}

}

int main(){

int n;

Point c;

double r;

int t;

cin>>t;

while(t--)

{

cin>>n;

for(int i=0; i

scanf("%lf%lf",&p[i].x,&p[i].y);

min_cover_circle(p,n,c,r);

printf("%.1f %.1f\n",c.x,c.y);

}

return 0;

}

時間: 11-29

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的江西理工大学c语言程序设计竞赛怎么备考,2015年江西理工大学C语言程序设计竞赛(高级组)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕人妻伦伦 | 亚洲国产日韩一区 | 成人三级黄色 | 日韩精品视频久久 | 美女av片 | 成年人免费黄色片 | 无人在线观看的免费高清视频 | 91成人在线免费观看 | 国产免费aa | 国模小黎自慰gogo人体 | 亚洲清纯唯美 | 免费av资源 | 日韩精品一区二区电影 | 美女视频黄色 | 二区三区| 亚洲欧洲一区 | 色爽黄 | 香蕉在线观看视频 | 久久综合导航 | 浮力影院国产第一页 | aaa国产视频 | 在线高清观看免费观看 | 国产色视频一区二区三区qq号 | 做暧暧视频在线观看 | 啪啪网站视频 | 91色偷偷| 国产精品久久久久久久久借妻 | 日韩一区二区在线观看 | 国产视频99| 久久大香 | 国产精品福利一区 | 少妇一级淫片免费看 | 欧美三日本三级少妇99 | 91成人免费观看 | 亚洲一区av在线 | aaa日韩| 日韩人妻精品在线 | 天天艹天天爽 | 国产精品aaaa| 成人网站免费观看入口 | 国产香蕉在线视频 | 九九久久99| 国产免费视频 | 在线观看免费黄网站 | 国产v亚洲v天堂无码久久久 | 国产精品日韩一区二区三区 | av永久在线| av福利网| 图片区亚洲色图 | 欧美黄色片免费看 | 国产女人精品 | 精东传媒在线观看 | 国产激情av| 毛片基地在线观看 | 蜜臀av免费在线观看 | 在线观看免费视频一区二区 | 激情五月俺也去 | 美女天天操 | 蜜桃av久久久亚洲精品 | 大地资源在线观看免费高清版粤语 | 欧美一区二区三区 | 欧美天天搞 | 大学生高潮无套内谢视频 | 喷水视频在线观看 | 久久精品—区二区三区舞蹈 | 日韩午夜激情视频 | 成人黄色激情 | 视频区小说区 | 国产午夜大地久久 | 一区二区三区四区日韩 | 韩国三级丰满少妇高潮 | 久久青青操 | 高清毛片aaaaaaaaa片 | 欧美性猛交bbbbb精品 | 日本熟妇色xxxxx日本免费看 | 艳妇臀荡乳欲伦交换电影 | 日本捏奶吃奶的视频 | 99久久精品国产一区二区成人 | 午夜性 | 久久激情综合网 | 久久久久五月天 | av动漫天堂 | 欧美性网站 | 国产精品16p | 一级黄色免费 | 国内自拍2020| 在线观看欧美日韩 | 中文字幕人妻一区二区三区视频 | 欧美黑人一区二区 | 丰满少妇在线观看资源站 | 自拍99 | 中文字幕在线免费 | 天堂在线播放 | 欧美色一区二区三区在线观看 | 亚洲欧美在线视频观看 | 91播放在线 | 妓院一钑片免看黄大片 | 波多野结衣av一区二区全免费观看 | 成人免费不卡视频 |