zoukankan      html  css  js  c++  java
  • uva 10036

    10036 - Divisibility

    额..直接复制不过来,只好叙述一下了...
    t组样例,n个数(1~10000),k(2~100)是要取余的数,然后给出n个数
    第一个数前不能加正负号,其他的数前面可以加正负号,然后问这些正负号任意加,所有的情况中是否有能对k取余得0的情况。
    若有输出:Di...否则Not...

    感觉好水的dp,可是就是学不会呀。。。。

    好烦恼.

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <stdlib.h>
     4 #include <math.h>
     5 #include <iostream>
     6 #include <algorithm>
     7 #include <climits>
     8 #include <queue>
     9 #define ll long long
    10 #define INF  0x3f3f3f3f
    11 
    12 using namespace std;
    13 int dp[100100][105];
    14 int main()
    15 {
    16     int t;
    17     cin>>t;
    18     while(t--)
    19     {
    20         int n,k,a;
    21         cin>>n>>k>>a;
    22         memset(dp,0,sizeof(dp));
    23         dp[0][(a%k+k)%k] = 1;//dp[i][j]代表加到第i位余数为j
    24         for(int i = 1; i < n; i++)
    25         {
    26             scanf("%d",&a);
    27             a = abs(a)%k;
    28             for(int j = 0; j < k; j++)
    29             {
    30                 if(dp[i-1][j])
    31                     dp[i][(j+a)%k] = dp[i][(j - a+k)%k] = 1;
    32             }
    33         }
    34         if(dp[n-1][0] == 1)
    35             printf("Divisible
    ");
    36         else
    37             printf("Not divisible
    ");
    38     }
    39     return 0;
    40 }

  • 相关阅读:
    14-补充内容:MySQl创建用户和授权
    15-可视化工具Navicat的使用
    11-数据的增删改
    12-单表查询
    09-完整性约束
    10-外键的变种 三种关系
    07-数据类型
    08-数据类型(2)
    Mysql 基本语法
    E. K-periodic Garland
  • 原文地址:https://www.cnblogs.com/henserlinda/p/4745018.html
Copyright © 2011-2022 走看看