hamming distance sum codeforces - 608b
|s|表示字串s的長度. 如果字串 s 和 t長度相等, 它們的漢明距離為 , si 是s中第i 個字元,ti是t中第i個字元. 舉例來說 「0011」 和 「0110」 的漢明距離等於 |0 - 0| + |0 - 1| + |1 - 1| + |1 - 0| = 0 + 1 + 0 + 1 = 2.
現在給出01字串a和b, 其中|a|<=|b|,試求出它們之間的「累計漢明距離」。所謂累計漢明距離,即為所有b中長度為|a|的子串和a的漢明距離之和。
input
01 00111
output
3就是a串在b串上匹配如果不同的話ans++。
分析,匹配的次數我們可以求出來,是blen-alen+1,例子中也就是4次,a[0]相當於在0011中連續匹配,可以通過求連續和來解決:)
#include
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 200005;
#define ll long long
char a[maxn],b[maxn];
ll sum[maxn];
int main()
ll ans=0;
for(int i=0;iif(i==0)
else
}cout
0;}
new job gym - 100952b
題意:就是第一天為1,第二天為2,第三天為4,第四天為8…最多為m,問最少多少天所有數的 和不少於n。
這個直接模擬的 話會超時,用等比公式計算判斷一下就好了,這裡注意下面二分的時候l是從1開始的。
#include
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 200005;
#define ll long long
char a[maxn],b[maxn];
ll sum[maxn];
ll pow1(int x,int n)
return ans;
}int main()
else
else l=mid+1;
}ans=res;
}printf("%d\n",ans);
}return
0;}
1143 - 計算幾何你瞎暴力
今天hh考完了期末考試,他在教學樓裡閒逛,他看著教學樓裡一間間的教室,於是開始思考:(x1,y1,z1)的教室走到(x2,y2,z2)的距離為 |x1−x2|+|y1−y2|+|z1−z2|那麼有多少對教室之間的距離是不超過r的呢?
第一行是乙個整數t(1≤t≤10), 表示有t組資料接下來是t組資料,對於每組資料:第一行是兩個整數n,q(1≤n≤5×104,1≤q≤103), 表示有n間教室, q次詢問.接下來是n行, 每行3個整數xi,yi,zi(0≤xi,yi,zi≤10),表這間教室的座標.最後是q行,每行乙個整數r(0≤r≤109)
我們可以看到x,y,z 的範圍特別小,我們判一下重就行了,然後再暴力求解。
相同的之間的數量是c(num,2),不同的之間是num1*num2;
然後在寫**的時候一定要注意下標不要寫錯了。。
#include
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 50005;
#define ll long long
struct node
;node a[maxn];
ll b[30][30][30];
ll sum[100];
int main()
int h=0;
for(int i=0;i<=10;i++)}}
}for(int i=0;ifor(int j=i+1;jint t=abs(a[i].x-a[j].x)+abs(a[i].y-a[j].y)+abs(a[i].z-a[j].z);
sum[t]+=b[a[i].x][a[i].y][a[i].z]*b[a[j].x][a[j].y][a[j].z];}}
for(int i=1;i<=60;i++)
sum[i]+=sum[i-1];
while(q--)
}return
0;}
每天一點python xlrd
xlrd是python語言中讀取excel的擴充套件工具,可以實現指定表單 指定單元格的讀取。1.讀取excel檔案 workbook xlrd.open workbook file.xls 2.獲取excel中表單數量 workbook.nsheets 3.獲取excel中的乙個表單 workbo...
每天一點C (一)
在搭建好c 的環境後,我們就可以開始進行c 的學習了,從基礎的語法開始時!首先我們要知道乙個 c 程式主要包括以下部分 空間宣告 class class 方法 class 屬性 乙個 main 方法 語句 表示式 using system 執行結果就是顯示 hello world 我的第乙個c 程式...
每天一點python assert斷言
assert 主要用於測試 1 assert語句用來宣告某個條件是真的。2 如果你非常確信某個你使用的列表中至少有乙個元素,而你想要檢驗這一點,並且在它非真的時候引發乙個錯誤,那麼assert語句是應用在這種情形下的理想語句。3 當assert語句失敗的時候,會引發一assertionerror。測...