Gravatar
swttc
积分:879
提交:186 / 563
change的时候忘了给add清零,改完交发现cbmax和cbmin忘改了,最后cbmax和cbmin的修改条件又出了错。。。我要完了

Gravatar
Fisher.
积分:929
提交:301 / 521
读题读题读题...我是傻,真的;

Gravatar
Shirry
积分:2255
提交:554 / 1107
之前忘了makenext(),竟然还能得80分……为什么这么玄学

Gravatar
HeHe
积分:1192
提交:426 / 866
。。。我这就迷之过了
debug了半晌,不知道改了些啥
反正就是过了

Gravatar
swttc
积分:879
提交:186 / 563
没看到-1.。。

Gravatar
CSU_Turkey
积分:1716
提交:614 / 1589
bfs+贪心(错误的)...
w了一个点
考试我就知足了

Gravatar
不需要黄桃
积分:170
提交:64 / 225
完全就是区间而已..

题目 465 挤牛奶
2017-09-06 21:41:01
Gravatar
不需要黄桃
积分:170
提交:64 / 225
...

Gravatar
_WA自动机
积分:397
提交:156 / 412
二分答案bug多成狗。。果然蒟蒻。。积分500+留念。。

Gravatar
Shirry
积分:2255
提交:554 / 1107
改天补一波kmp

Gravatar
Hyoi_0Koto
积分:1188
提交:297 / 652
总算搞出了stl双logn的做法。。。洛谷上的数据比这要科学,这里没有重复的一开始第一问求下降子序列也对了。。。

Gravatar
Hyoi_cerron
积分:111
提交:37 / 71
孙杨洋的打表呢

题目 1426 eins
2017-09-06 15:56:58
Gravatar
Shirry
积分:2255
提交:554 / 1107
写字符串写到怀疑自己是否学过oi…不知道调了几个小时sad

Gravatar
Ays
积分:173
提交:52 / 253
倍增写劣了啊..跳到同一深度的时候把x和y搞混了...
调试了一下午+一晚上..
中午来机房终于A了..

Gravatar
Hyoi_0Koto
积分:1188
提交:297 / 652
回复 @kZime : 大佬第二问的dp想法果然比蒟蒻的贪心不知道高到哪里去了%%%

Gravatar
Imone NOI2018Au
积分:449
提交:64 / 185
浮点01Trie + 动态凸包 + 三分跑得很慢。。。O(64NlogN)最后两个点2.5s。。。不过代码3k 100行

Gravatar
Hyoi_0Koto
积分:1188
提交:297 / 652
两个oj上的无解输出竟然不是同样的。。。因为这个被坑了两回。。。尬

题目 40 [NOIP 1999]回文数
2017-09-06 08:31:45
Gravatar
CSU_Turkey
积分:1716
提交:614 / 1589
考试30分,回头看到正解感觉好简单

Gravatar
Shirry
积分:2255
提交:554 / 1107
教你重新做人…

题目 2097 不平凡的boss
2017-09-06 08:02:14
Gravatar

积分:91
提交:27 / 155
明明输出答案是对的 非要W 求助
#include<iostream>
#include<cstdio>
#include<queue>
#include<algorithm>
#include<cstring>
using namespace std;
#define road 10000+10
#define node 1000+10
struct Edge
{
int x,y,z,next;
Edge(int x=0,int y=0,int z=0,int next=0):
x(x),y(y),z(z),next(next){}
}edge[road];
struct date
{
int x,g,h;
bool operator < (const date &a) const
{
return g+h>a.g+a.h;
}
};
int nl,m,k,x,y,z,sumedge,s,e,size;
int head[node],ans[100+10],dis[node],cnt[node];
bool vis[node];
int add(int x,int y,int z)
{
edge[++sumedge]=Edge(x,y,z,head[x]);
return head[x]=sumedge;
}
void spfa()
{
queue <int> q;
memset(dis,127/3,sizeof(dis));
dis[s]=0;vis[s]=1;q.push(s);
while(!q.empty())
{
int now=q.front();q.pop();
vis[now]=0;
for(int i=head[now];i;i=edge[i].next)
{
int to=edge[i].y;
if(dis[to]>dis[now]+edge[i].z)
{
dis[to]=dis[now]+edge[i].z;
if(!vis[to])
{
vis[to]=1;
q.push(to);
}
}
}
}
}
void Astar()
{
priority_queue <date> qq;
qq.push((date){e,0,dis[e]});
while(!qq.empty())
{
date nn=qq.top();qq.pop();
++cnt[nn.x];
if(cnt[nn.x]>k)continue;
if(nn.x==s){
ans[++size]=nn.g;
}
if(cnt[s]==k){
return;
}
for(int i=head[nn.x];i;i=edge[i].next)
{
qq.push( (date){edge[i].y,nn.g+edge[i].z,dis[edge[i].y]});
}
}
return;
}
int main()
{
// freopen("cowjog.in ","r",stdin);
// freopen("cowjog.out","w",stdout);
scanf("%d%d%d",&nl,&m,&k);
for(int i=1;i<=m;i++)
{
scanf("%d%d%d",&x,&y,&z);
if(x<y)swap(x,y);
add(x,y,z);
}
s=1;e=nl;
spfa();
memset(ans,-1,sizeof(ans));
Astar();
for(int i=1;i<=k;i++)
printf("%d\n",ans[i]);
return 0;
}