Skip to content

Instantly share code, notes, and snippets.

@s4553711
s4553711 / 1kg.py
Created January 12, 2025 10:19
An example to trnasform 1kg vcf to parquet and query
#!/usr/bin/env python3
from cyvcf2 import VCF
import numpy as np
import pandas as pd
import pyarrow as pa
import pyarrow.parquet as pq
import pyarrow.dataset as ds
import sys
import time
import argparse
#include <zlib.h>
#include <time.h>
#include <stdio.h>
#include <stdbool.h>
#include <sys/uio.h>
#include <fcntl.h>
#include <unistd.h>
#include <inttypes.h>
#include "kseq.h"
#include "kstring.h"
library(ggplot2)
library(scales)
library(ggpubr)
k = read.csv('iostat.tsv')
k$datetime <- as.POSIXct(k$time, origin="1970-01-01", tz="GMT")
s1 <- ggplot(k, aes(datetime)) +
geom_line(aes(y = rs, colour="rs"), alpha=0.4, size=1) +
geom_line(aes(y = ws, colour="ws"), alpha=0.4, size=1) +
class Solution {
public:
int trailingZeroes(int n) {
if (n < 5) return 0;
int count = 0;
while(n >= 5) {
count += floor(n/5);
n /= 5;
}
return count;
vector<vector<int> > C(s1.length() + 1, vector<int>(s2.length() + 1, 0));
// initial
for (int i = 1; i < s2.length() + 1; ++i) {
C[0][i] = C[0][i - 1] + s2[i - 1];
}
for (int i = 1; i < s1.length() + 1; ++i) {
C[i][0] = C[i - 1][0] + s1[i - 1];
}
for (int i = 1; i < s1.length() + 1; ++i) {
for (int j = 1; j < s2.length() + 1; ++j) {
class Solution {
public:
int numberOfArithmeticSlices(vector<int>& A) {
int count = 0;
int added = 0;
int n = A.size();
for(int i = 2; i < n; i++) {
if (A[i-1] - A[i] == A[i-2] - A[i-1]) {
count += ++added;
} else {
class Solution {
public:
int reverse(int x) {
int rev = 0;
while (x != 0) {
int pop = x % 10;
x /= 10;
if (rev > INT_MAX/10 || rev == INT_MAX/10 && pop > 7) return 0;
if (rev < INT_MIN/10 || rev == INT_MIN/10 && pop < -8) return 0;
rev = rev * 10 + pop;
class Solution {
public:
int countSubstrings(string s) {
int ans = 0;
for (int i = 0; i < s.length();i++) {
ans += count(s, i, i);
ans += count(s, i, i+1);
}
return ans;
}
class Solution {
public:
vector<int> countBits(int num) {
vector<int> res = vector<int>(num+1, 0);
for(int i = 1; i <= num; i++) {
res[i] = res[i >> 1] + (i & 1);
}
return res;
}
};
class Solution {
public:
int shoppingOffers(vector<int>& price, vector<vector<int>>& special, vector<int>& needs) {
int res = inner_product(price.begin(), price.end(), needs.begin(), 0);
for (auto offer: special) {
vector<int> r = helper(offer, needs);
if (r.empty()) continue;
res = min(res, shoppingOffers(price, special, r) + offer.back());
}
return res;