基因 gene

题目描述

[丛雨]发现了一种未知的基因,这种基因的结构十分的奇怪:

只由2种元素构成,为了表示方便,我们用0,1来表示这两种元素。这断基因中可以出现任意的0,1组合,但是绝对不会出现两个连续的1(例如:1000101010 是合法的,10101011是非法的)。

现在你要解决的是,给定一个基因长度 ,请输出有多少种不同的基因排列方法(长度为0排方法为0)。

输入

第一排一个数N表示有N个询问。

以下N排每排一个数K,表示询问长度为K的基因有多少种不同的组合方式。

输出

N排,每排对应一个询问。答案对12345取余。

样例输入 复制
2
1
2
样例输出 复制
2
3
提示

对于30%的数据,保证n<=1000。

对于60%的数据,保证n<=10000。

对于100%的数据,保证0<n<=1000000,k<100000。

sh上AC代码:

#include<bits/stdc++.h>
using namespace std;
int n,m,f[10000005]={0,2,3};
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    for(int i=3;i<=1000000;i++){
        f[i]=(f[i-1]+f[i-2])%12345;
    }
    cin>>n;
    for(;n--;){
        cin>>m;
        cout<<f[m]<<"\n";
    }
    return 0;
}

给给个关注吧

# 安装和下载必要的包 if (!requireNamespace("BiocManager", quietly = TRUE)) { install.packages("BiocManager") } BiocManager::install(c("TCGAbiolinks", "org.Hs.eg.db", "dplyr")) library(TCGAbiolinks) library(org.Hs.eg.db) library(dplyr) # 设置工作目录 base_dir <- "C:/Users/Administrator/Desktop/生信大作业" setwd(base_dir) # 创建输出列表 dir.create("output1", showWarnings = FALSE) dir.create("output2", showWarnings = FALSE) dir.create("output3", showWarnings = FALSE) dir.create("output4", showWarnings = FALSE) # 下载TCGA-HNSC的数据集 setwd(file.path(base_dir, "dataset")) query_expression <- GDCquery(project = "TCGA-HNSC", data.category = "Transcriptome Profiling", data.type = "Gene Expression Quantification", workflow.type = "STAR - Counts", ) GDCdownload(query_expression) expression_data <- GDCprepare(query_expression) save.image(file.path(base_dir, 'dataset/initial_data.Rdata')) ## Project 1 setwd(file.path(base_dir, "output1")) load(file.path(base_dir, 'dataset/initial_data.Rdata')) # 1. 转换ENSEMBL ID为GENE SYMBOL ensembl_ids <- rownames(expression_data) gene_symbols <- mapIds(org.Hs.eg.db, keys = ensembl_ids, column = "SYMBOL", keytype = "ENSEMBL") rownames(expression_data) <- gene_symbols # 2. 对重复基因取平均值 expression_data <- expression_data %>% # 按GENE SYMBOL分组并计算均值 as.data.frame() %>% group_by(rownames(.)) %>% summarise(across(everything(), mean, na.rm = TRUE)) expression_data <- as.matrix(expression_data) # 将结果重新转换为矩阵 rownames(expression_data) <- expression_data[, 1] expression_data <- expression_data[, -1] # 3. 过滤表达量过低的基因 gene_totals <- rowSums(expression_data > 0) # 计算每个基因在多少样本中有非零表达 min_threshold <- ncol(expression_data) # 设置阈值为样本总数 filtered_expression_data <- expression_data[gene_totals >= min_threshold, ] # 过滤掉总表达量小于样本数的基因 # 4. 保存处理后的数据 save(expression_data, file = "TCGA_HNSC_EXP.Rdata") print("清洗后的基因表达数据已保存为 TCGA_HNSC_EXP.Rdata") 错误于setwd(base_dir): 无法改变工作目录 此外: 警告信息: package(s) not installed when version(s) same as or greater than current; use `force = TRUE` to re-install: 'TCGAbiolinks' 'org.Hs.eg.db' 'dplyr'
06-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值