当前位置: 首页 > news >正文

网站建设风格中牟网络推广外包

网站建设风格,中牟网络推广外包,网站开发 教学目标,做淘宝客网站要备案吗这场cf只在b卡了一下,因为b真是犯蠢了,我以为会向下取整,结果是完全就不取整,或者说是向上取整,卡了我半个小时,要不是紧急看了题一下,昨天那场就毁了 话不多说,直接开讲 A. Game …

这场cf只在b卡了一下,因为b真是犯蠢了,我以为会向下取整,结果是完全就不取整,或者说是向上取整,卡了我半个小时,要不是紧急看了题一下,昨天那场就毁了

话不多说,直接开讲

A. Game of Division

思路:很容易就能看出来就是同余定理,能够找到一个取模k的数,且只有这一个数取模k为当前的余数,那么就输出这个数,否则一定存在两个数相减会导致能被k整除

#include <bits/stdc++.h>  
using namespace std;  
#define int long long  int t;  
int n, k;  
int a[200005];  void solve() {  cin >> n >> k;  int m[k + 1];  memset(m, 0, sizeof(m));  int index[k + 1]; memset(index, -1, sizeof(index)); for (int i = 1; i <= n; i++) {  cin >> a[i];  a[i] = a[i] % k;  m[a[i]]++;  index[a[i]] = i;  }  for (int i = 0; i < k; i++) {  if (m[i] == 1) {  cout << "YES\n";  cout << index[i] << "\n"; return;  }  }  cout << "NO\n";  
}  signed main() {  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);  cin >> t;  while (t--) {  solve();  }  return 0;  
}

 B. Paint a Strip

思路:我们发现,如果要输出最小的第一次操作,那么我们的放置位置一定是

1,4,10,22防置,为什么呢?

因为我们手玩一下,就可简单的发现,其实在1,4放完之后,可以直接2操作将前四个都变成1,然后在10再放置一个,就会有5个1,刚好能够把1~10全部渲染,后面同理可得

找到规律,flag=2*flag+2;

#include<bits/stdc++.h>
using namespace std;
#define int long long
int t;
int n,k;
int a[200005];void solve()
{cin>>n;if(n<=4){if(n==1){cout<<1<<"\n";}else{cout<<2<<"\n";}}else{int ans=2;int flag=4;while(flag<n){flag=flag*2+2;ans++;}cout<<ans<<"\n";}
}signed main()
{ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);cin>>t;while(t--)solve();return 0;
}

 C. Ordered Permutations

思路:我自己纯手写了个数从2到4的情况下,有多少个是最大的,然后发现,当个数为n的时候,有2^(n-1)个数是最大的,如果k大于这个数,就是无解,否则有解

然后我自己又手玩了一下,又发现一个规律,我们每次一个分段的最小值都应当放在两边,当我们这个分段k值大于一半,那么我们当前位的数就放在末尾,否则放在第一位

然后我们就可以用类二进制思想轻松解决

#include<bits/stdc++.h>
using namespace std;
#define int long long
int t;
int n,k;
int l,r;
int a[200005];
int flag[200005];
int vec[200005];
void solve()
{cin>>n>>k;k--;memset(flag,-1,sizeof(flag));for(int i=n-1; i>=1; i--){if(k&1){flag[i]=1;}k=k>>1;}if(k!=0){cout<<-1<<"\n";return;}l=1,r=n;for(int i=1; i<=n; i++){if(flag[i]==1){vec[r--]=i;}else{vec[l++]=i;}}for(int i=1; i<=n; i++){cout<<vec[i]<<" ";}cout<<"\n";
}signed main()
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>t;while(t--)solve();return 0;
}

 D. Non Prime Tree

思路:我们将跟结点赋值为1,然后将后续其第一个子节点赋值为父节点的值+1,其余子节点与父节点的值的差值为除了2以外的偶数即可

#include<bits/stdc++.h>
using namespace std;
#define int long long
int t;
int n,k;
int u,v;
vector<int> e[200005];
int ans[200005];
int flag;
void dfs(int v,int fa)
{for(int u:e[v]){if(u!=fa){ans[u]=flag+1;while(ans[u]!=ans[v]+1&&(ans[u]%2!=ans[v]%2||abs(ans[u]-ans[v])==2)){ans[u]++;}flag=ans[u];dfs(u,v);}}return ;
}
void solve()
{cin>>n;for(int i=1;i<=n-1;i++){cin>>u>>v;e[u].push_back(v);e[v].push_back(u);}flag=1;ans[1]=1;dfs(1,-1);for(int i=1;i<=n;i++){cout<<ans[i]<<" ";ans[i]=0;e[i].clear();}cout<<"\n";
}
signed main()
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>t;while(t--)solve();return 0;
}

 

http://www.hrbkazy.com/news/15710.html

相关文章:

  • 丰台做网站广告联盟接广告
  • 比较好的装修公司网站seo资讯
  • 网站建设柒金手指排名二一排名推广网站
  • 深圳外贸seo网站推广云南网站建设公司哪家好
  • wordpress禁用wp-cronseo网站推广是什么意思
  • 网站跳出率怎么算网站的seo优化报告
  • 软装潢.企业网站建设凡科建站的免费使用
  • 装修平台入驻优化师和运营区别
  • 德持建设集团有限公司网站by网站域名
  • 银川 网站建设网络营销工具有哪些?
  • 招标网站靠谱吗网络推广怎么推广
  • 自己做网站 赚钱广州seo代理
  • 好看网站手机版简易网站制作
  • 好看的个人网站主页公司广告推广方案
  • 网站制作工具 简易百度关键词价格排行榜
  • 查询网站备案服务商百度浏览器网址链接
  • 茶叶网站开发石家庄最新消息
  • wordpress轮播全屏百度seo引流
  • 如何用万网建设网站百度搜索量排名
  • 网站页面html静态化百度推广优化是什么意思
  • wordpress主题收费便宜网站手机优化
  • 网站建设实验小结新闻稿发布平台
  • 推广系统建站百度推广开户费用标准
  • 网页设计和网站开发的区别宁海关键词优化怎么优化
  • 日照网站优化公司河南靠谱seo电话
  • 南京 网站建设模板价格百青藤广告联盟
  • 做的网站出现404专注网站建设服务机构
  • 哪个网站做头像比较好招聘网站排名
  • 中山企业网络推广方案seo网站推广经理
  • 网站搭建教程吾爱破解百度信息流代运营