首页 > 其他分享 > Hyper-drive UVA - 10542

Hyper-drive UVA - 10542

时间:2023-04-26 15:24:32浏览次数:43  
标签:Hyper int drive long cas tes 10542 UVA include

题意:给定一些个d维的方块,给定两点,求穿过多少方块

 

转化为(0,0) 到 (a,b)

先考虑二维的

 然后容斥原理

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cmath>
using namespace std;
const int N =103;
#define int long long
int a[N],b[N] ,n;
 int count(int i){
 	return i==0?0:count(i/2)+(i&1) ;
 }
 void sov(int cas){
 	int ans=0 ;
 	for(int i=0;i<(1<<n);i++){
 		int s=0;
 		int c=count(i);
 		for(int j=0;j<n;j++){
 			if(i&(1<<j)) s=__gcd(s,a[j]) ;
 		}
 		if(c&1) ans+=s;
 		else ans-=s;
 	}
 	printf("Case %d: %lld\n", cas, ans);
 }
 signed main(){
 	int tes;cin>>tes;
 	int cas=0 ;
 	while(tes--){
 		cin>>n;
 		for(int i=0;i<n;i++) cin>>a[i];
 		for(int i=0;i<n;i++) cin>>b[i],a[i]=abs(a[i]-b[i]);
 		sov(++cas);
 	}
 }

 

 

标签:Hyper,int,drive,long,cas,tes,10542,UVA,include
From: https://www.cnblogs.com/towboa/p/17356183.html

相关文章

  • 虚拟机|--Hyper-V|--Start PXE over IPv4.报错解决方案
    前言在Hyper-V管理器中>>操作>>"快速创建"了一个WIndowsXP系统的虚拟机,结果启动的时候报错了解决方案在创建虚拟机的时候不要快速创建,而使用新建,在指定代数步骤选择第一代(1),开始创建的步骤改一下就可以了.其他配置推荐在分配内存步骤我写的是8000M左右,(根......
  • Period UVA - 1371
     题意:给两个串A,B。现在把B串分为若干个部分,对每一个部分进行操作将其变为一个A串,代价为每部分操作次数的最大值求最小代价 #include<iostream>#include<algorithm>#include<cstring>usingnamespacestd;constintN=5003,M=N;#defineintlonglongconstinti......
  • Hyper-V安装centos系统作为本地服务器教程
    下载CentOS镜像以下是镜像下载地址:https://repo.huaweicloud.com/centos/7.9.2009/isos/x86_64/因为要做服务器使用,所以推荐下CentOS-7-x86_64-Minimal-2009.iso版本。启用Hyper-vwindows系统一般没有默认打开hyper-v功能,需要手动开启。如果已开启请跳过该步骤。按下组合......
  • Moving to Nuremberg UVA12223
    题目大意:给出n,一个无根的树,每条边上都有权值。现在每个位置都有一个景点,一个人想在一年之内去cnt[i]次景点,所以接下来给出m,表示说在m个位置上有这个人想去的地方,给出位置以及想去的次数(注意,每去一个景点都要返回自己的住处),namo这个人该住在哪里走的路程才最短。换根dp#incl......
  • Fast Food UVA - 662
    政府在某山区修建了一条道路,恰好穿越总共m个村庄的每个村庄一次,没有回路或交叉,任意两个村庄只能通过这条路来往。已知任意两个相邻的村庄之间的距离为di(为正整数),其中,0<i<m。为了提高山区的文化素质,政府又决定从m个村中选择n个村建小学(设0<n≤m<500)。请根据给定的m、n以及所有......
  • Movie collection UVA - 1513
    有n个影碟,标号为1~n,位置为0~n-1,每次取出一个影碟看完后,将其放在最前面(标号为0处),问每个影碟取出前,其位置之前有多少个影碟 开2倍数组,"i放置前面"这个操作add(i,-1),add(newi,1)  #include<iostream>#include<cstring>#include<algorithm>#include<vector>usingn......
  • Prime k-tuple UVA - 1404
        一个步骤: 在[a,b]中标记S的倍数 #include<iostream>#include<cstring>#include<algorithm>#include<vector>usingnamespacestd;constintN=1e5+20;constintQ=2e9+2;#defineintlonglongboolvis[Q];intb[N],pm[N],tot=0;......
  • The Bells are Ringing UVA-12119
    已知M为T1,T2,T3的LCM输出满足Ti-Tj<=25的所有可能情况#include<iostream>#include<cmath>#include<algorithm>#include<cstring>usingnamespacestd;constintN=1E6+3;#defineintlonglongintpm[N],tot;intb[N],fac[N],F[N],len,cnt[N]......
  • redis之哈希类型-列表类型-集合类型-有序集合-慢查询-pipeline-发布订阅-Bitmap位图-H
    目录redis之哈希类型-列表类型-集合类型-有序集合-慢查询-pipeline-发布订阅-Bitmap位图-HyperLogLog-GEO地理位置昨日内容回顾今日内容详细1哈希类型2列表类型3集合类型4有序集合5慢查询6pipeline与事务7发布订阅8Bitmap位图9HyperLogLog10GEO地理位置redis之哈希类型......
  • UVA11014
     给定一个NxNxN的正方体,求出最多能选几个整数点。使得随意两点PQ不会使PQO共线。  F(k)#include<iostream>#include<cmath>#include<algorithm>usingnamespacestd;constintN=5e5;#defineintlonglongintb[N+2],pm[N+2],tot=0;intn;intpow3(intx){......