ZOJ Monthly, November 2008
来源:互联网 发布:朋友圈编辑软件 编辑:程序博客网 时间:2024/05/16 23:02
A 用tree树做,注意排序1~len-1再构造树
B 类似的博弈,找出输的组合来计算下面能赢的组合
C 求圆与环的相交面积,将环拆开成两圆分别求交做差即可,注意判断接近0时输出形势
D 听说是宽搜,没有看
E 动态规划计算每个出口的最优,o(n*n*n),注意s型的路径
F把大数拆成3进制再从高到低逐位求和
G
H
I
附B:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3057
#include <iostream>
#include <algorithm>
using namespace std;
#define N 301
bool tag[N][N][N];
int a[3];
int main()
{
int i,j,k,r;
memset(tag,0,sizeof(tag));
for(i=0;i<N;i++)
for(j=i;j<N;j++)
for(k=j;k<N;k++)
{
if(tag[i][j][k])continue;
for(r=k+1;r<N;r++)
tag[i][j][r]=1;
for(r=j+1;r<=k;r++)
tag[i][r][k]=1;
for(r=k+1;r<N;r++)
tag[i][k][r]=1;
for(r=i+1;r<=j;r++)
tag[r][j][k]=1;
for(r=j+1;r<=k;r++)
tag[j][r][k]=1;
for(r=k+1;r<N;r++)
tag[j][k][r]=1;
for(r=1;k+r<N;r++)
tag[i][j+r][k+r]=1;
for(r=1;k+r<N&&i+r<=j;r++)
tag[i+r][j][k+r]=1;
for(;k+r<N;r++)
tag[j][i+r][k+r]=1;
for(r=1;j+r<=k;r++)
tag[i+r][j+r][k]=1;
for(;j+r<N&&i+r<=k;r++)
tag[i+r][k][j+r]=1;
for(;j+r<N;r++)
tag[k][i+r][j+r]=1;
break;
}
while(scanf("%d%d%d",&a[0],&a[1],&a[2])!=EOF)
{
sort(a,a+3);
if(tag[a[0]][a[1]][a[2]])printf("1\n");
else printf("0\n");
}
return 0;
}
附F: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3061
#include<stdio.h>
#define N 22
int bit[N],num[N];
int main()
{
int i,n,k,r;
long long res,p,p0;
num[0]=1;
for(i=1;i<N;i++)
num[i]=3*num[i-1];
while(scanf("%d %d",&n,&k)!=EOF)
{
int t=n;
for(i=0;n;i++){
bit[i]=n%3;
n/=3;
}
res=0;
p=-1;
r=0;
p0=0;
for(i--;i>=0;i--){
if(p+1){
res+=p/3;
p*=2;
p+=r*num[i];
r*=2;
}
else p=0;
if(bit[i]==0){
p0*=3;
}
else if(bit[i]==1){
p0*=3;
p+=p0*num[i]/(t+1);
p0=p0*(t+1-num[i])/(t+1);
p0+=t+1-num[i];
r++;
}
else{
r+=2;
res+=p0*(t+1-2*num[i])/(t+1);
p0*=3;
p+=2*p0*num[i]/(t+1)+num[i];
break;
}
t-=num[i]*bit[i];
}
if(i<0)res+=p0;
else if(i>0){
for(i--;i>=0;i--){
res+=p/3;
p*=2;
p+=r*num[i];
r*=2;
}
}
res+=p;
printf("%lld\n",res%k);
}
return 0;
}
- ZOJ Monthly, November 2008
- ZOJ Monthly, November 2012
- ZOJ Monthly, November 2012
- zoj 3839(ZOJ Monthly, November 2014)
- ZOJ Monthly, November 2012 慎入
- ZOJ Monthly, November 2014 - C Tilt Cylinder
- zoj 4113 Cube Simulation ( ZOJ Monthly, November 2010 )
- zoj 3432 Find the Lost Sock (ZOJ Monthly, November 2010)
- 122 - ZOJ Monthly, November 2012-I Search in the Wiki map+set 一对多
- 137 - ZOJ Monthly, November 2014 - J Poker Face (模拟,递推)
- ZOJ Monthly, May 2011
- [ZOJ Monthly 2011] Sept
- ZOJ Monthly, June 2012
- ZOJ Monthly, August 2012
- ZOJ Monthly, August 2012
- ZOJ Monthly, September 2012
- ZOJ Monthly, December 2013
- ZOJ Monthly, March 2014
- 不含某个串的整数
- RMQ问题与LCA问题
- trie树模板与KMP算法模板
- 一二维树状数组模板
- dedecms仿站注意事项(经验文)
- ZOJ Monthly, November 2008
- IIS安装注意点与Apache Tomcat的安装
- node.js 文件操作
- Eclipse的安装与设置
- 动态贝叶斯网络DBN
- ASP连接数据库
- 【转】dll调用
- eclipse快捷键
- OpenOffice3.4.1源码编译和安装