题目:给你N个数,在N个数中加入加号或减号,判断能否组成整除K的组合。

分析:dp。状态f(i,j)为前i个数字组成的结果余数可以为j的真值。

状态转移方程:f(i+1,(j±a[i])%k) = max(f(i,j)){ 0 =< j < K }

说明:每次计算前清空数据;计算前把数据先映射到%K的值域。

#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>using namespace std;int a[10004];
int f[10004][104];int main()
{int T,N,K;while ( scanf("%d",&T) != EOF ) while ( T -- ) {scanf("%d%d",&N,&K);for ( int i = 0 ; i < N ; ++ i )scanf("%d",&a[i]);for ( int i = 0 ; i < N ; ++ i )a[i] = abs(a[i])%K;memset( f, 0, sizeof(f) );f[0][0] = 1;for ( int i = 0 ; i < N ; ++ i )for ( int j = 0 ; j < K ; ++ j )if ( f[i][j] ) {f[i+1][(j+K+a[i])%K] = 1;f[i+1][(j+K-a[i])%K] = 1;}if ( f[N][0] ) printf("Divisible\n");else printf("Not divisible\n");}return 0;
}

UVa 10036 - Divisibility相关推荐

  1. π-Algorithmist分类题目(3)

    原题网站:Algorithmist,http://www.algorithmist.com/index.php/Main_Page π-Algorithmist分类题目(3) Probability ...

  2. UVA dp题目汇总

    UVa专题练习 A-4 10003 经典dp,可用四边形不等式优化 10029 基础dp,DAG最长路,需高效构图 10032 经典问题.子集和数问题.01背包问题 10036 能否在一个整数序列的每 ...

  3. UVa在线比赛单题汇总-----DP专题

    动态规划基础 例题 LA 3882 UVa 3882 - And Then There Was One 递推------------无力orz UVa 10635 10635 - Prince and ...

  4. [搜索]UVa 129 困难的串

    题意:将一个包含两个相邻的重复子串的子串,称为"容易的串",其他为"困难的串". 输入正整数n和l,输出由前l个字符组成的,字典序第n小的困难的串. 输入样例: ...

  5. uva 401.Palindromes

    题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...

  6. Uva 3767 Dynamic len(set(a[L:R])) 树套树

    Dynamic len(set(a[L:R])) Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 https://uva.onlinejudge.org/in ...

  7. UVA 11752 超级幂

    UVA 11752 超级幂 Z - The Super Powers Time Limit:1000MS     Memory Limit:0KB     64bit IO Format:%lld & ...

  8. UVa 11174 - Stand in a Line

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...

  9. UVa 10112 - Myacm Triangles

    UVa第一卷最后一题. 求内部不含点并且面积最大的三角形. 暴力. 代码如下: 1 #include<iostream> 2 #include<cstdio> 3 #inclu ...

最新文章

  1. Java 自增(++) 和 C语言中自增的区别
  2. 浅谈Junit测试中反射和Jmock的应用
  3. linux 内核rt,实时操作系统kernel rt
  4. Android 8.0学习(25)---系统的应用图标适配
  5. qt checkbox 选中事件_Qt基础知识学习
  6. AndroidStudio_安卓原生开发_精美自定义多选控件_多选Spinner_MultiSpinner_拿来即用---Android原生开发工作笔记144
  7. 软件工程概论之登录页面
  8. oracle 导出01455,使用exp命令导出报EXP-00008 和ORA-01455的解决方法
  9. 编程基础(动态内存的分配)
  10. idea下载源代码报错提示Connection refused to host: 127.0.0.1;
  11. HDFS原理(超详解)
  12. 【解决问题】java.lang.ClassNotFoundException: com.Application 问题的几种解决方案
  13. S7-200SMART PLC与V20变频器MODBUS通讯示例程序
  14. Java实现PDF添加图片水印和文字水印
  15. ArcGIS技巧】下载偏移影像后纠偏操作
  16. Unity3D帧动画,图片的切换实现动画效果
  17. 深度剖析JAVA软件工程师
  18. 6.Alarm 闹钟服务
  19. 11.Null和Underfined
  20. 第三章总体均数的估计与假设检验(2)

热门文章

  1. 微信小程序第三方框架
  2. 数据库管理之数据库的恢复
  3. 滚动轴承频谱分析详解
  4. EMD基础学习---emd例子
  5. 白盒/黑盒/灰盒测试的区别
  6. css实现三角形对话框,三角形图案
  7. Flink之Window与窗口开始时间
  8. 速度与AI兼得:荣耀Play“GPU Turbo”是什么大杀技?
  9. 关系数据库——关系操作和关系完整性
  10. [自动化] 如果电脑不会自己看网课,就应该用Python教会它