啦啦啦,我现在已经能ak校赛啦,啦啦,一年没白学(大雾)

A:DLK的魔法

分析:这题直接逆推,每次将当前数字尽量变成一个平方数,然后直接平方,直到1
思路:尽量少使用+1操作,就是最优方案,那么就是尽量多平方操作,那么逆推的时候,每次尽量造出平方数
代码:

ll n,a,b,c;
int main()
{cin>>n;if(n<=2)cout<<n<<"\n";else{do{if(c && n-c*c){b+=n-c*c+1;n=c;}elseif(c){b+=1;n=c;}c=sqrt(n);}while((n-c*c || c-1));cout<<b<<"\n";}return 0;
}

B:DLK的题册

分析:?都/2算下呗
代码:

ll a,b;
int main()
{cin>>a>>b;a/=2,b/=2;a-=b;if(a>0){cout<<"forward "<<a<<"\n";}elseif(a==0){cout<<"right here\n";}else{cout<<"backward "<<-a<<"\n";}return 0;//4 5 //2 3//1
}

C:DLK的队伍

分析:从小到大排一下,每次选第一个,做完了
代码:

ll a[maxn],n,asd,num;
int main()
{cin>>n;rep(i,1,n+1)cin>>a[i];sort(a+1,a+n+1);int l=1;rep(i,1,n+1){num++;if(num==a[l]){asd++;num=0;l=i+1;}}if(num)asd++;cout<<asd<<"\n";return 0;
}

D:DLK的计算器

分析:一开始还以为是个栈,要写后缀表达式之类的,然后发现就一个值每次加减就行
代码:

ll n,x,a;
string s1;
int main()
{cin>>n;while(n--){cin>>s1;switch(s1[1]){case '+':{cin>>x;a+=x;break;}case 'S':{cin>>x;a=x;break;}case 'R':{cout<<a<<"\n";break;}case '-':{cin>>x;a-=x;break;}case 'C':{a=0;break;}}}return 0;
}

E:DLK的游戏

分析:小博弈,最后一堆无意义,看前面的即可,1的时候状态转换,不是1的时候结果已经固定了
代码:

ll n,x,a;
string s1;
int main()
{cin>>n;n--;while(n--){cin>>x;if(x==1)a^=1;else{if(a)cout<<"KDL\n";elsecout<<"DLK\n";return 0;}}if(a)cout<<"KDL\n";elsecout<<"DLK\n";return 0;
}

F:DLK的房子

分析:
1000*1000,暴力呗
代码:

int a[maxn];
int val[maxn];
int n,m,q,l,l1,b;
int main()
{cin>>n>>m;rep(i,1,n+1){cin>>q;l=0;l1=0;while(q--){cin>>b;l1=l;l+=b;rep(i,l1+1,l){if(a[i]){val[a[i]]++;a[i]=0;}}if(l!=m)a[l]++;}}rep(i,1,m+1){if(a[i]){val[a[i]]++;a[i]=0;}}rep(i,1,n+1){cout<<val[i]<<" ";}cout<<"\n";return 0;
}

G:DLK的照片

分析:emm,直接输出呗。。。
代码:

db a,b,c,d;
int main()
{cin>>a>>b>>c>>d;d=d*a-b*c;if(d<0){//这是不是要判eps来的,emmmm d=0;}elsed/=a;cout<<fixed<<setprecision(6)<<d<<"\n";return 0;
}

H:DLK的地图

分析:n和m就500,直接遍历
代码:

int n,m;
int dx[4]={1,-1,0,0};
int dy[4]={0,0,1,-1};
char fx[4]={'D','U','R','L'};
int a[maxn][maxn];
char b[maxn][maxn];
bool check(int x,int y)
{if(x<1 || x>n || y>m || y<1)return false;return true;
}
void work()
{rep(i,1,n+1){rep(j,1,m+1){if(a[i][j]==0)b[i][j]='X';else{rep(z,0,4){int x1=i+dx[z];int y1=j+dy[z];if(check(x1,y1)){if(a[x1][y1]==-1){//-1得内循环 if(a[i][j]==-1){b[i][j]=fx[z];break;}}else{//正数 if(a[i][j]==-1)continue;else{if(a[i][j]==a[x1][y1]+1){b[i][j]=fx[z];break;}}}}elsecontinue;}}}}
}
void print()
{rep(i,1,n+1){rep(j,1,m+1)cout<<b[i][j]<<" ";cout<<"\n";}
}
int main()
{cin>>n>>m;rep(i,1,n+1){rep(j,1,m+1)cin>>a[i][j];}work();print();return 0;
}

L:DLK的提示

分析:不会的建议自杀
代码:

int main()
{cout<<"Study Tips: Did you study today?\n";return 0;
}

J:DLK的翻转

分析:这不是文艺平衡树直接秒?暴力过了
代码:

//文艺平衡树
//m次操作 l,r
//翻转[l,r]//先插入1~n编号,但可以直接递归建树
//这个节点的值就是原本a[i]的值
//这个节点的排名是它是当前数组中的第几个,用左儿子的size+1表示
#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
#define per(i,a,n) for(int i=n-1;i>=a;i--)
typedef long long ll;
typedef double db;
typedef pair<int,int> PII;
typedef vector<int> VI;
const ll mod=1000000007;
const int maxn=1100005;
const int MAXN=1100005;
const int inf=0x3f3f3f3f;
const int INF=0x7f7f7f7f;
ll gcd(ll a,ll b){ return b?gcd(b,a%b):a;}
#define ms(a) memset(a,0,sizeof(a))
#define mss(a) memset(a,-1,sizeof(a))
#define msi(a) memset(a,inf,sizeof(a))
#define iossync ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);//head
#define ls(p) tree[p][0]
#define rs(p) tree[p][1]
#define root  tree[0][1]
struct Splay_tree{int f,sub_size,cnt,value,tag;int son[2];
}s[MAXN];
int original[MAXN],root,wz;
inline bool which(int x){return x==s[s[x].f].son[1];
}
inline void update(int x){if(x){s[x].sub_size=s[x].cnt;if(s[x].son[0])s[x].sub_size+=s[s[x].son[0]].sub_size;if(s[x].son[1])s[x].sub_size+=s[s[x].son[1]].sub_size;}
}
inline void pushdown(int x){if(x&&s[x].tag){s[s[x].son[1]].tag^=1;s[s[x].son[0]].tag^=1;swap(s[x].son[1],s[x].son[0]);s[x].tag=0;}
}
inline void rotate(int x){int fnow=s[x].f,ffnow=s[fnow].f;pushdown(x),pushdown(fnow);bool w=which(x);s[fnow].son[w]=s[x].son[w^1];s[s[fnow].son[w]].f=fnow;s[fnow].f=x;s[x].f=ffnow;s[x].son[w^1]=fnow;if(ffnow){s[ffnow].son[s[ffnow].son[1]==fnow]=x;}update(fnow);
}
inline void splay(int x,int goal){for(int qwq;(qwq=s[x].f)!=goal;rotate(x)){if(s[qwq].f!=goal){//这个地方特别重要,原因是需要判断的是当前的父亲有没有到目标节点,而如果把“qwq”改成“x”……就会炸 rotate(which(x)==which(qwq)?qwq:x);}}if(goal==0){root=x;}
}int build_tree(int l, int r, int fa) {if(l > r) { return 0; }int mid = (l + r) >> 1;int now = ++ wz;s[now].f=fa;s[now].son[0]=s[now].son[1]=0;s[now].cnt++;s[now].value=original[mid];s[now].sub_size++;s[now].son[0] = build_tree(l, mid - 1, now);s[now].son[1] = build_tree(mid + 1, r, now);update(now);return now;
}
inline int find(int x){int now=root;while(1){pushdown(now);if(x<=s[s[now].son[0]].sub_size){now=s[now].son[0];}   else  {x-=s[s[now].son[0] ].sub_size + 1;if(!x)return now;now=s[now].son[1];}}
}
inline void reverse(int x,int y){int l=x-1,r=y+1;l=find(l),r=find(r);splay(l,0);splay(r,l);int pos=s[root].son[1];pos=s[pos].son[0];s[pos].tag^=1;
}
inline void dfs(int now){pushdown(now);if(s[now].son[0])dfs(s[now].son[0]);if(s[now].value!=-INF&&s[now].value!=INF){cout<<s[now].value<<" ";}if(s[now].son[1])dfs(s[now].son[1]);
}
int main(){iossync;int n,m,x,y,qwe;cin>>n>>m;original[1]=-INF,original[n+2]=INF;for(int i=1;i<=n;i++){cin>>original[i+1];}root=build_tree(1,n+2,0);//有一个良好的定义变量习惯很重要……重复定义同一个变量(比如全局的和局部的同名)那么就会发生覆盖。 for(int i=1;i<=m;i++){cin>>qwe;x=1,y=qwe;reverse(x+1,y+1);x=qwe+1,y=n;reverse(x+1,y+1);
//      dfs(root);}dfs(root);
}

K:DLK的棋子

分析:求求了,别写这题,求求了

#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
#define per(i,a,n) for(int i=n-1;i>=a;i--)
typedef long long ll;
typedef double db;
typedef pair<int,int> PII;
typedef vector<int> VI;
const ll mod=1000000007;
const int maxn=1100005;
const int inf=0x3f3f3f3f;
const int INF=0x7f7f7f7f;
ll gcd(ll a,ll b){ return b?gcd(b,a%b):a;}
#define ms(a) memset(a,0,sizeof(a))
#define mss(a) memset(a,-1,sizeof(a))
#define msi(a) memset(a,inf,sizeof(a))
#define iossync ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);//题意分析
//所有格子每次移动方向相同
//那么要么全部格子刚好移动相同
//要么强制使某些格子中间得暂停移动
//暂停只有一个方法,达到边界,且向边界移动
//那么你首先得知道,谁移动最多
//不对不对
//知道谁移动最多其实是无效的
//最终的移动次数肯定得根据总体来看
//比如样例二的理论移动次数分别为  3 2 2 1 1
//实际有效次数为 5 6 6 5 3
//所以其实知道最大实际有效次数,即为最终次数 //再分析
//左右影响上下吗?
//不影响 没错,压根不影响
//所以左右和上下可以分开处理
//写一个work函数,第一次处理x
//第二次处理前,交换x和y
struct node{int sx,sy;int ex,ey;int dis;//我写dis干啥的???没用上呀 int xdis,ydis;int xsid,ysid;void init(int x1=0,int x2=0,int x3=0,int x4=0){sx=x1,sy=x2;ex=x3,ey=x4;xdis=sx-ex;ydis=sy-ey; xsid=-xdis;ysid=-ydis;}void change(){swap(sx,sy);swap(ex,ey);swap(xdis,ydis);swap(xsid,ysid);} bool operator < (const node & b) const{if(sx==b.sx)return ex<b.ex;return sx<b.sx;}
}a[maxn];
//bool cmp(node a,node b)
//{//写了change,就用不上了,呜呜呜,所以爱是会消失的
//  if(sy==b.sy)
//  return ey<b.ey;
//  return sy<b.sy;
//}
int n,m,k,T,cnt;
int u,v,u1,v1;
void work()
{vector<int> v1;v1.push_back(-1); sort(a+1,a+k+1);int num=1;//记录不同初始位置数量v1.push_back(1);//话说直接unique就行,但总之后面要遍历一次//顺带着呗 //emm,先排除不可能的情况,剪枝一下 rep(i,1,k){//      if(a[i].sx==a[i+1].sx && a[i].ex==a[i+1].ex)
//      {//          //emm,好像这情况挺好的?emmm,草,的确哦
//      }
//      else
//      if(a[i].sx==a[i+1].sx && a[i].ex!=a[i+1].ex)
//      {//          cnt=-1;
//          return ;
//      }//按sx从小到大排序的,假如当前sx比上一个小,然而ex却比后面一个大//那么必然是不成立的,因为做不到呀//臣妾做不到呀//其实理论上也可行//比如全部都是倒序的//1 2 3 4 5//其实可以先全部去右边//然后再从右边回来//但规定了排序的顺序,相当于固定了目前只能左到右了 if(a[i].xdis>a[i+1].xdis){cnt=-1;return ;}if(a[i].sx==a[i+1].sx){if(a[i].ex<a[i+1].ex){cnt=-1;return ;}} else{//!=if(a[i].ex>a[i+1].ex){cnt=-1;return ;}num++;v1.push_back(i+1);}}int l=1,r=num;//除了首尾的,其他不能再随便动了//即必须保持同步//那么dis必须相同//然后首尾的,假如终点坐标相同//可以打个标记//标记为1时,代表此前有点终点坐标相同//那么最后计算位移的时候,需要注意下for(;l<r  && l<num;l++){if(a[v1[l]].ex!=a[v1[l+1]].ex)break;}//假如l不是1,等同于打了标记for(;r>1 && r>l ; r--){if(a[v1[r]].ex!=a[v1[r-1]].ex)break;}//除了首尾的都需要同步 rep(i,l+1,r-1){if(a[v1[i]].xdis!=a[v1[i+1]].xdis){cnt=-1;return ;}}
//  switch()//第一种//最简单的情况,所有数字同步移动就完事了//比如 1 3  2 4   3 5   4 6
//  int flag1=1;
//  rep(i,1,num)
//  {//      if(a//而此时,l和r一定没动,因为sx已经去重了//我好像是个脑瘫//中间判了3次num==1//在开头判一次不就好了吗if(num==1){cnt+=abs(a[v1[1]].xdis);return ;}if(l==1 && r==num ){//      cnt+=abs(a[v1[1]].xdis);
//ex-sx//操操操,样例为啥过不去了呀,我傻了if(r-l==1){if(a[v1[1]].xdis==a[v1[2]].xdis && a[v1[num]].xdis==a[v1[num-1]].xdis){cnt+=abs(a[v1[1]].xdis);}elsecnt+=min(2*a[v1[1]].ex-2+a[v1[num]].sx-a[v1[num]].ex,\2*n-2*a[v1[num]].ex+a[v1[1]].ex-a[v1[1]].sx);}else{if(a[v1[1]].xdis==a[v1[2]].xdis && a[v1[num]].xdis==a[v1[num-1]].xdis){cnt+=abs(a[v1[1]].xdis);}elseif(a[v1[1]].xdis==a[v1[2]].xdis){cnt+=2*n+a[v1[1]].ex-a[v1[1]].sx-2*a[v1[num]].ex;}elseif(a[v1[num]].xdis==a[v1[num-1]].xdis){cnt+=a[v1[1]].sx-1+a[v1[1]].xsid-a[v1[num]].xsid+a[v1[1]].ex-1;}else{cnt+=min(a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex\+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex\,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1\-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);}}return ;}elseif(l==1){//左不动右动if(l==r){if(a[v1[1]].xdis==a[v1[2]].xdis && a[v1[num]].xdis==a[v1[num-1]].xdis){cnt+=abs(a[v1[1]].xdis);}elsecnt+=min(-2+a[v1[num]].sx+a[v1[num]].ex,2*n-a[v1[1]].ex-a[v1[1]].sx);
//          cnt+=min(2*a[v1[1]].ex-2+a[v1[num]].sx-a[v1[num]].ex,\
//          2*n-2*a[v1[num]].ex+a[v1[1]].ex-a[v1[1]].sx);
//          cnt+=min(a[v1[num]].sx+a[v1[num]].ex-2,2*m-a[v1[1]].sx-a[v1[1]].ex);return ;}
//      cnt+=min(2*n+a[v1[1]].ex-a[v1[1]].sx\
//      -2*a[v1[num]].ex,2*n-2 +a[v1[1]].ex+a[v1[1]].sx\
//      -a[v1[r]].ex-a[v1[r]].ex);if(r-l>1){if(a[v1[1]].xdis==a[v1[2]].xdis){cnt+=2*n+a[v1[1]].ex-a[v1[1]].sx-2*a[v1[num]].ex;}else{cnt+=min(a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex\+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex\,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1\-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);}}else{//          ans+=min(2*n-2*a[v1[num]].ex+a[v1[1]].ex-a[v1[1]].sx)cnt+=min(2*n+a[v1[1]].ex-a[v1[1]].sx\-2*a[v1[num]].ex,2*n-2 +a[v1[1]].ex+a[v1[1]].ex\-a[v1[r]].ex-a[v1[r]].sx);//2*n+a[v1[1]].ex-a[v1[1]].sx-2*a[v1[num]].ex//a[v1[1]].ex+a[v1[1]].sx-a[v1[r]].ex-a[v1[r]].ex
//          if(a[v1[1]].xdis==a[v1[2]].xdis)
//          {//              cnt+=2*n+a[v1[1]].ex-a[v1[1]].sx-2*a[v1[num]].ex;
//          }
//          else
//          {//              cnt+=min(a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex\
//              +n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex\
//              ,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1\
//              -a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);
//
//              //a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex
//          }}}elseif(r==num){if(l==r){//          cnt+=min(a[v1[num]].sx+a[v1[num]].ex-2,2*m-a[v1[1]].sx-a[v1[1]].ex);
//          return ;
//      if(l==r)
//      {if(a[v1[1]].xdis==a[v1[2]].xdis && a[v1[num]].xdis==a[v1[num-1]].xdis){cnt+=abs(a[v1[1]].xdis);}elsecnt+=min(-2+a[v1[num]].sx+a[v1[num]].ex,2*n-a[v1[1]].ex-a[v1[1]].sx);
//          cnt+=min(2*a[v1[1]].ex-2+a[v1[num]].sx-a[v1[num]].ex,\
//          2*n-2*a[v1[num]].ex+a[v1[1]].ex-a[v1[1]].sx);
//          cnt+=min(a[v1[num]].sx+a[v1[num]].ex-2,2*m-a[v1[1]].sx-a[v1[1]].ex);return ;
//      }}
//      cnt+=min(-2+2*a[v1[1]].ex-a[v1[num]].ex+a[v1[num]].sx,\
//      2*n-2+a[v1[l]].sx+a[v1[l]].ex-2*a[v1[r]].ex);if(r-l>1){if(a[v1[num]].xdis==a[v1[num-1]].xdis)cnt+=a[v1[1]].sx-1+a[v1[1]].xsid-a[v1[num]].xsid+a[v1[1]].ex-1;else{cnt+=min(n-2+a[v1[l+1]].sx-a[v1[l+1]].ex+a[v1[l]].ex-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);}}else{//         if(a[v1[num]].xdis==a[v1[num-1]].xdis)
//          {//              cnt+=a[v1[1]].sx-1+a[v1[1]].xsid-a[v1[num]].xsid+a[v1[1]].ex-1;
//          }
//          else
//          {//              cnt+=min(a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex\
//              +n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex\
//              ,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1\
//              -a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);
//          }cnt+=min(a[v1[1]].sx-1+a[v1[1]].xsid-a[v1[num]].xsid+a[v1[1]].ex-1,a[v1[l]].sx-1+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[r]].ex);}}else{//先判特殊情况,最后全跑一个点去了//那么l==r if(l==r){if(num==1){cnt+=a[v1[1]].xdis;return ;}else{//全去左边,然后回去//或者全去右边,然后回去 cnt+=min(a[v1[num]].sx+a[v1[num]].ex-2,2*m-a[v1[1]].sx-a[v1[1]].ex);}return ;}if(r-l>1){//重点 cnt+=min(a[v1[l+1]].sx-1-a[v1[l+1]].ex+a[v1[l]].ex+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex,n-a[v1[r-1]].sx-a[v1[r]].ex+a[v1[r-1]].ex+n-1-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);}else{cnt+=min(a[v1[l]].sx-1+n-1-a[v1[r]].ex+a[v1[l]].ex+n-a[v1[num]].ex,n-a[v1[r]].sx+n-1-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex-1);}
//      else
//      {//          cnt+=min(2*n-2+a[v1[l]].sx+a[v1[l]].ex-a[v1[num]].ex-a[v1[num]].ex,\
//          2*n-2-a[v1[r]].sx-a[v1[r]].ex+a[v1[l]].ex+a[v1[1]].ex);
//      }}
}
int a1,a2;
int main()
{//      freopen("2.txt","r",stdin);
//    freopen("3.txt","w",stdout);
//  iossync;cin>>T;
//  a1=6;
//  a2=a1+2;
//  int fuck=0;while(T--){cnt=0;
//      fuck++;
//      if(fuck>=1250 && 1250 <= 1252)
//      {//
//      }cin>>n>>m>>k;
//      if(fuck>=a1 && fuck<= a1)
        cout<<n<<" "<<m<<" "<<k<<"\n";rep(i,1,k+1){cin>>u>>v>>u1>>v1;
//                  if(fuck>=a1 && fuck <= a1)
//      {//          cout<<u<<" "<<v<<" "<<u1<<" "<<v1<<"\n";
//      }a[i].init(u,v,u1,v1);}work();if(cnt!=-1){rep(i,1,k+1)a[i].change();swap(n,m);work();}cout<<cnt<<"\n";}return 0;
}

L:DLK的比赛

分析:二分
代码:

#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
#define per(i,a,n) for(int i=n-1;i>=a;i--)
typedef long long ll;
typedef double db;
typedef pair<int,int> PII;
typedef vector<int> VI;
const ll mod=1000000007;
const int maxn=1100005;
const int inf=0x3f3f3f3f;
const int INF=0x7f7f7f7f;
ll gcd(ll a,ll b){ return b?gcd(b,a%b):a;}
#define ms(a) memset(a,0,sizeof(a))
#define mss(a) memset(a,-1,sizeof(a))
#define msi(a) memset(a,inf,sizeof(a))
#define iossync ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
ll n,x,a;
int main()
{cin>>n;rep(i,0,n){cin>>x;a=(a<<1)+x;}cout<<((1<<n)-a)<<"\n";return 0;
}

东北农业大学第九届程序设计竞赛 题解相关推荐

  1. 北华大学第九届程序设计竞赛 题解

    5.14和队友VP一场,第二次VP,状态明显比第一次好很多,总共A了7题,基本是能做出来的都做出来了,最后还剩下接近2小时的时间..... A "北华"有几何 思路:数图片中&qu ...

  2. 文远知行杯广东工业大学第十六届程序设计竞赛(题解)

    文远知行杯广东工业大学第十六届程序设计竞赛_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ A:思维题 #include<bits/stdc++.h> usi ...

  3. 集美大学第九届程序设计竞赛 部分题解(待补充)

    B.https://ac.nowcoder.com/acm/contest/42400/B 题目大意,就是选取两个合法矩形,求总方案数为多少. 思路:可以很巧妙的转化一下问题,选取两个矩形,本质上就是 ...

  4. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛题解 H

    H 直线 平面上存在n条直线.请问n条直线在平面上最多存在多少交点. 题解 数学题.平面上n条直线最多有1/2 * n * (n-1)个交点. 注意数据范围比较大,需要用高精.或者python/jav ...

  5. “九韶杯”河科院程序设计协会第一届程序设计竞赛题解

    A-6的个数 题意 ​ 2021中,出现了多少个数字6 思路 ​ for循环枚举对于每个数分解之后贡献答案就可以了 代码 #include <bits/stdc++.h> using na ...

  6. 第一届程序设计竞赛题解(E题)

    E.码头菩萨 题目描述: 众所周知,陈末是个英雄联盟菜鸟,又菜又爱玩. 陈末特别喜欢用派克来秀他下饭的操作,每次都能把自己秀死. 涌泉之恨是派克的大招,能在一定情况下,直接斩杀敌人. 此时陈末操作的派 ...

  7. 科林明伦杯哈尔滨理工大学第九届程序设计竞赛

    A氵题 B错排公式 C 不太懂卡塔兰数是啥东西,于是乎写的是一个n^2的dp,暴力打表写文件里,然后复制到代码里,然后切掉了 打表代码 #include<bits/stdc++.h> us ...

  8. 科林明伦杯哈尔滨理工大学第九届程序设计竞赛 H 题(dfs)

    深度优先搜索!!!!! n 个数中取不超过 k 个数并将他们相加,请问有多少种不同的取法使得取出的数的和是质数 Input多组数据,第一行一个整数 T 表示数据组数(T<=5)对于每一组数据:第 ...

  9. 2018年长沙理工大学第十三届程序设计竞赛题解

    链接:https://www.nowcoder.com/acm/contest/96/A 来源:牛客网 "LL是什么?这都不知道的话,别说自己是程序猿啊!"   "lon ...

最新文章

  1. Wijmo 更优美的jQuery UI部件集:运行时处理Wijmo GridView数据操作
  2. 计算机弹奏两只老虎爱跳舞,原神风物之诗琴乐谱大全
  3. 算法竞赛入门经典(第二版) | 习题3-10 盒子 (pair结构体)(UVa1587,Box)
  4. selenium webdriver 启动三大浏览器Firefox,Chrome,IE
  5. 自己动手写UI库——引入ExtJs(布局)
  6. linux 安装redis2.8.3,Linux及Windows安装Redis(详细)
  7. 【报告分享】2019年度薪酬白皮书.pdf(附下载链接)
  8. asp系统转换php系统时间函数,window_Asp常用通用函数之生成时间的整数,'函数名:GetMyTimeNumber()' - phpStudy...
  9. Linux基础系列4(ls,cp命令详解)
  10. 【每日算法Day 96】腾讯面试题:合并两个有序数组
  11. 继承ActionSupport例子展示
  12. 前端js ,实现简体繁体语言切换
  13. No module named libs.resources
  14. python项目总结
  15. html数据线如何使用,揭秘数据线DIY详细步骤
  16. Flutter Demo 简单的涂鸦应用
  17. 【机器学习】有监督、无监督、自监督、半监督、弱监督的区别
  18. 名符其实的react下一代状态管理器hox
  19. Acne Scarring Treatment
  20. 3、频域无芯片RFID标签原理

热门文章

  1. 【分享rmzt:三国杀猛将游戏主题】
  2. 沃尔特·欧文·本特利(Walter Owen Bentley)是著名的创始人
  3. 2018年撰写好文案的三个方面知识
  4. Java中Random.nextInt()方法功能简介说明
  5. linux文件夹不能复制,linux如何复制文件夹
  6. GT/s和GB/s(Gbps)之间含义说明
  7. Enter passphrase for key(输入密码短语)
  8. 猫书 如何轻松拥猫入怀
  9. python数码时钟代码_用python写一个程序,以电子时钟格式打印时间,每隔一秒刷新一次...
  10. centos8开放3306端口