Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
#include
#include
#include
#include
#include
using namespace std; int n, k; int memo[1000][1000]; vector
v [1000]; int dp(int n_1, int predhoden){ if(n_1 == n){ return 1; } if(memo[n_1][predhoden] != -1){ return memo[n_1][predhoden]; } int mod = 1e9 + 7; int res = 0; for (int i = 0; i < v[predhoden].size(); i++) { if(predhoden != v[predhoden][i] ){ res += dp(n_1 +1, v[predhoden][i] ); res = res% mod; } } return memo[n_1][predhoden] = res; } int main(){ cin >> n >> k; int res = 0; for (int i = 0; i < 1000; i++) { for (int j = 0; j < 1000; j++) { memo[i][j]= -1; } } for (int i = 1; i <= k; i++) { for (int j = 1; j <= k; j++) { if(i%j == 0 || j%i == 0){ v[i].push_back(j); } } } int mod = 1e9 + 7; for (int i = 1; i <= k; i++) { res += dp(1,i); res %= mod; } cout << res << endl; }
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)