刷个简单的DP缓缓心情

1A

 #include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
#include<vector>
using namespace std;
#define N 10010
vector<int>q[N];
#define LL __int64
#define INF 1e10
LL dp[N][];
int o[N];
struct node
{
int x,y,d;
char s[];
}p[N];
int main()
{
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i = ; i <= m ; i++)
{
scanf("%d%d%d%s",&p[i].x,&p[i].y,&p[i].d,p[i].s);
q[p[i].y].push_back(i);
}
dp[i][] = ;
dp[i][] = INF;
dp[i][] = INF;
for(i = ; i <= n ; i++)
{
dp[i][] = dp[i][] = dp[i][] = INF;
for(j = ; j < (int)q[i].size() ; j++)
{
int v = q[i][j],k,x = p[v].x,w = p[v].d;
if(strcmp(p[v].s,"Licensed")==)
k = ;
else if(strcmp(p[v].s,"Cracked")==)
k = ;
else k = ;
if(k==)
{
dp[i][] = min(dp[i][],min(dp[x][]+w,dp[x][]+w));
}
else if(k==)
{
dp[i][] = min(dp[i][],min(dp[x][]+w,dp[x][]+w));
dp[i][] = min(dp[i][],dp[x][]+w);
}
else
{
dp[i][] = min(dp[i][],dp[x][]+w);
dp[i][] = min(dp[i][],dp[x][]+w);
dp[i][] = min(dp[i][],dp[x][]+w);
}
}
}
LL ans = INF;
for(i = ; i <= ; i++)
ans = min(ans,dp[n][i]);
if(ans==INF)
puts("Offline");
else
{
puts("Online");
printf("%I64d\n",ans);
}
return ;
}

1741. Communication Fiend(dp)的更多相关文章

  1. URAL 1741 Communication Fiend(最短路径)

    Description Kolya has returned from a summer camp and now he's a real communication fiend. He spends ...

  2. Ural 1741 Communication Fiend(隐式图+虚拟节点最短路)

    1741. Communication Fiend Time limit: 1.0 second Memory limit: 64 MB Kolya has returned from a summe ...

  3. DP/最短路 URAL 1741 Communication Fiend

    题目传送门 /* 题意:程序从1到n版本升级,正版+正版->正版,正版+盗版->盗版,盗版+盗版->盗版 正版+破解版->正版,盗版+破解版->盗版 DP:每种情况考虑一 ...

  4. POJ 1018 Communication System(贪心)

    Description We have received an order from Pizoor Communications Inc. for a special communication sy ...

  5. POJ 1018 Communication System (动态规划)

    We have received an order from Pizoor Communications Inc. for a special communication system. The sy ...

  6. Communication System(动态规划)

    个人心得:百度推荐的简单DP题,自己做了下发现真得水,看了题解发现他们的思维真得比我好太多太多, 这是一段漫长的锻炼路呀. 关于这道题,我最开始用DP的思路,找子状态,发现自己根本就不会找DP状态数组 ...

  7. TCSRM 593 div2(1000)(dp)

    Problem Statement      The pony Rainbow Dash wants to choose her pet. There are N animals who want t ...

  8. 1346. Intervals of Monotonicity(dp)

    1346 简单dp #include <iostream> #include<cstdio> #include<cstring> #include<algor ...

  9. TCSRM 591 div2(1000)(dp)

    挺好的dp 因为有一点限制 必须任意去除一个数 总和就会小于另一个总和 换句话来说就是去除最小的满足 那么就都满足 所以是限制最小值的背包 刚开始从小到大定住最小值来背 TLE了一组数据 后来发现如果 ...

随机推荐

  1. sharepoint mysite and upgrade topics

    My Sites overview (SharePoint Server 2010)http://technet.microsoft.com/en-us/library/ff382643(v=offi ...

  2. VSC 使用Git进行版本控制

    Visual Studio Code 使用Git进行版本控制 请确保你安装了最新的VS Code.http://code.visualstudio.com/ 请确保安装了最新版的Git.https:/ ...

  3. Codeforces Round #348 (VK Cup 2016 Round 2, Div. 2 Edition) D. Little Artem and Dance

    题目链接: http://codeforces.com/contest/669/problem/D 题意: 给你一个初始序列:1,2,3,...,n. 现在有两种操作: 1.循环左移,循环右移. 2. ...

  4. PHP中如何给日期加上一个月 加一周 加一天

    echo   date("Y-m-d",strtotime("+1 month",strtotime("2012-02-04"))); 结果 ...

  5. Oracle中的 UPDATE FROM 解决方法

    转:http://www.cnblogs.com/JasonLiao/archive/2009/12/23/1630895.html Oracle中的 UPDATE FROM 解决方法 在表的更新操作 ...

  6. web配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  7. HDU1251 统计难题 Trie树

    题目很水,但毕竟是自己第一道的Trie,所以还是发一下吧.Trie的更多的应用慢慢学,AC自动机什么的也慢慢学.... #include<iostream> #include<cst ...

  8. 1009-2的N次方

    描述 编程精确计算2的N次方.(N是介于100和1000之间的整数). 输入 正整数N (100≤N≤1000) 输出 2的N次方 样例输入 200 样例输出 16069380442589902755 ...

  9. [LeetCode]Link List Cycle

    Given a linked list, determine if it has a cycle in it. Follow up: Can you solve it without using ex ...

  10. FileOutputStream和FileInputStream

    package one.string; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFound ...