1.足球联赛

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n;
struct node{
int sc,id;
}a[];
char s[][];
bool cmp(node x,node y){
if(x.sc!=y.sc)return x.sc>y.sc;
return x.id<y.id;
}
int main(){
freopen("soccer.in","r",stdin);freopen("soccer.out","w",stdout);
scanf("%d",&n);
for(int i=;i<=n;i++)scanf("%s",s[i]+),a[i].id=i;
for(int i=;i<=n;i++){
for(int j=;j<=n;j++){
if(i==j)continue;
if(s[i][j]=='W')a[i].sc+=;
if(s[i][j]=='L')a[j].sc+=;
if(s[i][j]=='D')a[i].sc+=,a[j].sc+=;
}
}
sort(a+,a+n+,cmp);
int ans=a[].sc;printf("%d ",a[].id);
for(int i=;i<=n;i++){
if(a[i].sc!=ans)return ;
printf("%d ",a[i].id);
}
return ;
}

100分

2.最短路径

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<ctime>
#include<queue>
#define maxn 1010
using namespace std;
int n,b1,b2,pre[maxn];
double x[maxn],y[maxn],dis[maxn][maxn],d[maxn];
double ans=;
bool vis[maxn],v[maxn];
double Calc(double a1,double b1,double a2,double b2){
double res;
res=sqrt((a1-a2)*(a1-a2)+(b1-b2)*(b1-b2));
return res;
}
void dfs(int pos,double sum){
if(sum>=ans)return;
if(x[pos]>x[b1]&&vis[b1]==)return;
if(pos==n){
int p=n;
for(int i=n;i>=;i--){
if(!vis[i]){
sum+=dis[i][p];
p=i;
if(sum>=ans)return;
}
}
ans=min(ans,sum);
return;
}
for(int i=pos+;i<=n;i++){
if(i==b2)continue;
if(i==b1){
vis[i]=;
dfs(i,sum+dis[pos][i]);
vis[i]=;
break;
}
vis[i]=;
dfs(i,sum+dis[pos][i]);
vis[i]=;
}
} struct node{
double v;
int id;
bool operator < (const node x)const{
return v>x.v;
}
};
node make_node(double v,int id){
node res;res.v=v;res.id=id;
return res;
}
double Dij1(){
priority_queue<node>q;
q.push(make_node(,));
memset(vis,,sizeof(vis));
for(int i=;i<=n;i++)d[i]=;
d[]=;
while(!q.empty()){
node now=q.top();q.pop();
if(vis[now.id])continue;
vis[now.id]=;
for(int i=now.id+;i<=n;i++){
if(i>b1)break;
if(d[i]>d[now.id]+dis[now.id][i]){
d[i]=d[now.id]+dis[now.id][i];
q.push(make_node(d[i],i));
pre[i]=now.id;
}
}
}
}
double Dij2(){
priority_queue<node>q;
q.push(make_node(d[b1],b1));
vis[b1]=;
while(!q.empty()){
node now=q.top();q.pop();
if(vis[now.id])continue;
vis[now.id]=;
for(int i=now.id+;i<=n;i++){
if(d[i]>d[now.id]+dis[now.id][i]){
d[i]=d[now.id]+dis[now.id][i];
q.push(make_node(d[i],i));
pre[i]=now.id;
}
}
}
double res=;
int now=n;
while(now){
v[now]=;
res+=dis[now][pre[now]];
now=pre[now];
}
v[]=;
int p=n;
for(int i=n;i>=;i--){
if(!v[i]){
res+=dis[i][p];
p=i;
}
}
return res;
} int main(){
freopen("paths.in","r",stdin);freopen("paths.out","w",stdout);
// freopen("Cola.txt","r",stdin);
scanf("%d%d%d",&n,&b1,&b2);
b1++;b2++;
for(int i=;i<=n;i++)scanf("%lf%lf",&x[i],&y[i]);
for(int i=;i<=n;i++)
for(int j=i+;j<=n;j++){
double d=Calc(x[i],y[i],x[j],y[j]);
dis[i][j]=dis[j][i]=d;
}
if(n<=){//爆搜
dfs(,);
printf("%.2lf",ans);
return ;
}
else{//贪心
double ans1=,ans2=;
memset(v,,sizeof(v));
Dij1();
ans1=Dij2();
printf("%.2lf",ans1);
}
}

20分 暴力

3.阿Q的停车场

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,F,x,pos[],car[];
bool check(int x){
int cnt=;
for(int i=;i<=n;i++){
if(car[i]==)cnt++;
else cnt=;
if(cnt>=x)return ;
}
return ;
}
void Insert(int id){
int l=,r=,mid,len=;
while(l<=r){
mid=(l+r)>>;
if(check(mid))len=mid,l=mid+;
else r=mid-;
}
if(len%==)len-=;
l=,r=;
int Pos;
for(int i=;i<=n;i++){
if(car[i]==)r=i;
if(car[i]>)l=i+;
if(r-l+>=len)break;
}
if(r==n-&&car[n]==)r=n;
if(l==){
puts("");
pos[id]=;
car[]=id;
return;
}
else if(r==n){
printf("%d\n",n);
pos[id]=n;
car[n]=id;
return;
}
Pos=l+len/;
pos[id]=Pos;
car[Pos]=id;
printf("%d\n",Pos);
}
int main(){
// freopen("park.in","r",stdin);freopen("park.out","w",stdout);
// freopen("Cola.txt","r",stdin);
scanf("%d%d",&n,&m);
for(int i=;i<=m;i++){
scanf("%d%d",&F,&x);
if(F==){
if(i==){
puts("");
car[]=x;
pos[x]=;
}
else Insert(x);
}
if(F==){
car[pos[x]]=;
pos[x]=;
}
}
}

10分 暴力

2017-11-8 NOIP模拟赛的更多相关文章

  1. 11/1 NOIP 模拟赛

    11.1 NOIP 模拟赛 期望得分:50:实际得分:50: 思路:暴力枚举 + 快速幂 #include <algorithm> #include <cstring> #in ...

  2. 11.7 NOIP模拟赛

    目录 2018.11.7 NOIP模拟 A 序列sequence(two pointers) B 锁lock(思路) C 正方形square(埃氏筛) 考试代码 B C 2018.11.7 NOIP模 ...

  3. 2017 10.25 NOIP模拟赛

    期望得分:100+40+100=240 实际得分:50+40+20=110 T1 start取了min没有用,w(゚Д゚)w    O(≧口≦)O T3 代码3个bug :数组开小了,一个细节没注意, ...

  4. 2017.5.27 NOIP模拟赛(hzwer2014-5-16 NOIP模拟赛)

    期望得分:100+100+60+30=290 实际得分:100+20+60+0=180 当务之急:提高一次正确率 Problem 1 双色球(ball.cpp/c/pas) [题目描述] 机房来了新一 ...

  5. NOIP模拟赛-2018.11.7

    NOIP模拟赛 如果用命令行编译程序可以发现没加头文件之类的错误. 如果用命令行编译程序可以发现没加头文件之类的错误. 如果用命令行编译程序可以发现没加头文件之类的错误. 编译之前另存一份,听说如果敲 ...

  6. NOIP模拟赛-2018.11.6

    NOIP模拟赛 今天想着反正高一高二都要考试,那么干脆跟着高二考吧,因为高二的比赛更有技术含量(我自己带的键盘放在这里). 今天考了一套英文题?发现阅读理解还是有一些困难的. T1:有$n$个点,$m ...

  7. NOIP模拟赛-2018.11.5

    NOIP模拟赛 好像最近每天都会有模拟赛了.今天从高二逃考试跑到高一机房,然而高一也要考试,这回好像没有拒绝的理由了. 今天的模拟赛好像很有技术含量的感觉. T1:xgy断句. 好诡异的题目,首先给出 ...

  8. NOIP模拟赛20161022

    NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...

  9. contesthunter暑假NOIP模拟赛第一场题解

    contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...

  10. NOIP模拟赛 by hzwer

    2015年10月04日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿2(mining) [题目背景] 小奇飞船的钻头开启了无限耐久+精准采集模式!这次它要将原矿运到泛光之源的矿 ...

随机推荐

  1. 一個在WCF學習中的小教訓(本人非科班菜鳥,此經驗無參考價值,衹是自己的經驗記錄)

    1.关于“ServiceHost 仅支持类服务类型”的解决:   Service属性必须执行,不是接口. 改为下图所示: 解决! (注:按朱哥的方法WCF已经可以通信---截至今天的11:11(例子在 ...

  2. Git_学习_06_ 放弃本地修改

    一.未使用 git add 缓存代码时 git checkout -- filepathname // 放弃某个文件 git checkout . // 放弃所有文件 git checkout . 用 ...

  3. BEC listen and translation exercise 38

    很高兴看到有这么多人想了解我们的体育设施.It's good to see that there are so many people wanting to find out about our sp ...

  4. log4j报错ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.

    ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only err ...

  5. 《Javascript高级程序设计》阅读记录(一):第二、三章

    <Javascript高级程序设计>阅读记录(一) 这个系列,我会把阅读<Javascript高级程序设计>之后,感觉讲的比较深入,而且实际使用价值较大的内容记录下来,并且注释 ...

  6. ACM学习历程—HDU1041 Computer Transformation(递推 && 大数)

    Description A sequence consisting of one digit, the number 1 is initially written into a computer. A ...

  7. POJ3621Sightseeing Cows

    Sightseeing Cows Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10595   Accepted: 3632 ...

  8. tx2在自制载板上无法识别usb以及pcie无法读取数据

    注意使用的系统版本是Jetpack-3.1,其它版本的系统上没有测试过!!! 刷机时替换dtb文件: 将Jetpack刷机包 64_TX2/Linux_for_Tegra_tx2/kernel/dtb ...

  9. chromedriver下载

    https://www.cnblogs.com/vickey-wu/p/6629407.html

  10. JBOSS AS 5.X/6.X 反序列化漏洞(CVE-2017-12149)复现

    本机IP:192.168.220.145 靶机IP:192.168.220.139,版本为JBOSS AS 6.1.0 Final 首先访问目标地址,http://192.168.220.139:80 ...