時間限制:c/c++ 1秒,其他語言2秒
空間限制:c/c++ 524288k,其他語言1048576k
64bit io format: %lld
給你乙個長度為50的數字串,問你有多少個子序列構成的數字可以被3整除
答案對1e9+7取模
輸入乙個字串,由數字構成,長度小於等於50
輸出乙個整數示例1
複製
132複製
3示例2
複製
9複製
1示例3
複製
333複製
7示例4
複製
123456複製
23示例5
複製
00複製
3
n為長度dp[i][j] 前i位數能構成mod3為j的子串行的數目子任務1: n <= 5
子任務2: n <= 20
子任務3: 無限制
#includeusing namespace std;
const int mod=1e9+7;
typedef long long ll;
const int n=55;
ll dp[n][3];
char s[n];
int main()
else if(a==1)
else if(a==2)
} printf("%lld",dp[len][0]);
return 0;
}
被3整除的子串行(線性dp)
時間限制 c c 1秒,其他語言2秒 空間限制 c c 524288k,其他語言1048576k 64bit io format lld 題目描述 給你乙個長度為50的數字串,問你有多少個子序列構成的數字可以被3整除 答案對1e9 7取模 輸入描述 輸入乙個字串,由數字構成,長度小於等於50 輸出描...
dp被3整除的子串行
給你乙個長度為50的數字串,問你有多少個子序列構成的數字可以被3整除 答案對1e9 7取模 輸入乙個字串,由數字構成,長度小於等於50輸出乙個整數示例1 複製132 複製3 示例2複製9 複製1 示例3複製333 複製7 示例4複製123456 複製23 示例5複製00 複製3 n為長度 子任務1 ...
DP 被3整除的子串行
題意 給定乙個數字串,然後求出所有子串行中能被3整除的個數。題解 1 狀態表示 f i j 指的是,以s i 結尾的對3取餘後值為j的集合 2 f i j 方案數 3 集合劃分 每次轉移都是從f 1,2,i 1 0,1,2 1 include2 include3 include4 include5 ...