1 WarYan

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 11w+

D. Minimal Height Tree

Educational Codeforces Round 97 (Rated for Div. 2)D. Minimal Height Tree题意给你一个bfs序列让你还原树,求树的最大深度。需要注意的是给你的序列中如果是升序的那么他们是属于一个父亲的。思路建图模拟整个过程。整个代码中最细节的是if(a[j]<a[j-1]){ q.push(a[j]),edge[u].push_back(a[j]);++j;}保证了可以考虑到每一种情况。#include<bits

2020-10-29 20:07:11

C. Chef Monocarp

思路dp[i][j]表示前i秒选了j个。容易得状态转移方程:dp[i][j]=min(dp[i−1][j],dp[i−1][j−1]+abs(a[j]−i))dp[i][j]=min(dp[i-1][j],dp[i-1][j-1]+abs(a[j]-i))dp[i][j]=min(dp[i−1][j],dp[i−1][j−1]+abs(a[j]−i))再考虑aaa数组为什么要排序,为了保证符合dp的’性质’,不排序的话dp是不对的。#include<bits/stdc++.h>us

2020-10-28 21:35:35

Codeforces Round #120 (Div. 2) C. STL

Codeforces Round #120 (Div. 2) C. STLCodeforces Round #120 (Div. 2) C. STL给出只会出现pair和int的字符串,要求按照给出pair和int的顺序,添加’<’ , ‘>’ , ','这三个符号,使得给出的串成为一个合法的类型.Input第一行一个整数 n (1 ≤ n ≤ 105), 表示包含n个int第二行是一些 “pair” 和 “int”字符串总数不超过 105Output输出合法类型,若不合法则输出

2020-10-25 02:30:26

G. Reducing Delivery Cost(最短路)

Codeforces Round #677 (Div. 3) G. Reducing Delivery Cost题目大意n个点,m条边,k个路径。你可以选择删除图中的一条边,问你删除后k个路径的长度和最小值。思路先n2lognn^2lognn2logn处理出所有路径。然后枚举m条边去掉其中一条后的最小路径值和。#include<bits/stdc++.h>using namespace std;const int maxn=1010;typedef long long ll;

2020-10-24 19:25:35

039:我自己的 ostream_iterator

039:我自己的 ostream_iterator题面描述程序填空输出指定结果#include <iostream>#include <list>#include <string>using namespace std;template <class T1,class T2>void Copy(T1 s,T1 e, T2 x){ for(; s != e; ++s,++x) *x = *s;} template<cla

2020-10-24 19:24:30

037:函数对象的过滤器

037:函数对象的过滤器题面描述程序填空输出指定结果#include <iostream>#include <vector>using namespace std;struct A { int v; A() { } A(int n):v(n) { }; bool operator<(const A & a) const { return v < a.v; }};// 在此处补充你的代码template <class T&

2020-10-24 19:24:07

035:按距离排序

035:按距离排序题面描述程序填空,输出指定结果#include <iostream>#include <cmath>#include <algorithm>#include <string>using namespace std;template <class T1,class T2>struct Closer {// 在此处补充你的代码};int Distance1(int n1,int n2) { return

2020-10-24 19:23:22

034:goodcopy

034:goodcopy题面描述编写GoodCopy类模板,使得程序按指定方式输出#include <iostream>using namespace std;template <class T>struct GoodCopy {// 在此处补充你的代码};int a[200];int b[200];string c[200];string d[200];template <class T>void Print(T s,T e) {

2020-10-24 19:22:21

033:排序,又见排序!

033:排序,又见排序!题面描述自己编写一个能对任何类型的数组进行排序的mysort函数模版。只能写一个mysort模板,不能写mysort函数!#include <iostream>using namespace std;bool Greater2(int n1,int n2) { return n1 > n2;}bool Greater1(int n1,int n2) { return n1 < n2;}bool Greater3(double d1

2020-10-24 19:21:27

032:这个模板并不难

032:这个模板并不难题面描述程序填空,输出指定结果#include <iostream>#include <string>#include <cstring>using namespace std;template <class T> class myclass {// 在此处补充你的代码~myclass( ) { delete [] p; } void Show() { for( int i = 0;i < si

2020-10-24 19:20:55

031:山寨版istream_iterator

031:山寨版istream_iterator题面描述模仿C++标准模板库istream_iterator用法,实现CMyistream_iterator使得程序按要求输出#include <iostream>#include <string>using namespace std;template <class T>class CMyistream_iterator{// 在此处补充你的代码};int main() { int t

2020-10-24 19:20:07

030:你真的搞清楚为啥 while(cin >> n) 能成立了吗?

030:你真的搞清楚为啥 while(cin >> n) 能成立了吗?题面描述读入两个整数,输出两个整数 ,直到碰到-1#include <iostream>using namespace std;class MyCin{// 在此处补充你的代码};int main(){ MyCin m; int n1,n2; while( m >> n1 >> n2) cout << n1 &lt

2020-10-22 22:06:44

029:简单的Filter

029:简单的Filter题面描述编写Filter模板,使得程序产生指定输出 不得编写 Filter函数#include <iostream>#include <string>using namespace std;// 在此处补充你的代码bool LargerThan2(int n){ return n > 2;}bool LongerThan3(string s) { return s.length() > 3;}string as1

2020-10-22 22:06:13

028:简单的foreach

028:简单的foreach题面描述编写MyForeach模板,使程序按要求输出 不得编写 MyForeach函数#include <iostream>#include <string>using namespace std;// 在此处补充你的代码void Print(string s){ cout << s;}void Inc(int & n){ ++ n;}string array[100];int a[100];int

2020-10-22 22:05:39

027:简单的SumArray

027:简单的SumArray题面描述填写模板 PrintArray,使得程序输出结果是: TomJackMaryJohn 10 不得编写SumArray函数#include <iostream>#include <string>using namespace std;template <class T>T SumArray(// 在此处补充你的代码}int main() { string array[4] = { "Tom","Jack","Ma

2020-10-22 22:04:55

026:怎么又是Fun和Do

026:怎么又是Fun和Do题面描述程序填空输出指定结果#include <iostream>using namespace std;class A { private: int nVal; public: void Fun() { cout << "A::Fun" << endl; }; virtual void Do() { cout << "A::Do" << endl; }};class B:public A

2020-10-22 22:03:51

025:这是什么鬼delete

025:这是什么鬼delete题面描述程序填空输出指定结果#include <iostream> using namespace std;class A { public: A() { }// 在此处补充你的代码}; class B:public A { public: ~B() { cout << "destructor B" << endl; } }; int main() { A * pa; pa = new B;

2020-10-22 22:02:36

024:Fun和Do

024:Fun和Do题面描述程序填空输出指定结果#include <iostream> using namespace std;class A { private: int nVal; public: void Fun() { cout << "A::Fun" << endl; }; void Do() { cout << "A::Do" << endl; } }; class B:public A {

2020-10-22 21:59:44

023:看上去像多态

023:看上去像多态题面描述程序填空产生指定输出#include <iostream>using namespace std;class B { private: int nBVal; public: void Print() { cout << "nBVal="<< nBVal << endl; } void Fun() {cout << "B::Fun" << endl; }

2020-10-22 21:58:45

022:编程填空:统计动物数量

022:编程填空:统计动物数量题面描述代码填空,使得程序能够自动统计当前各种动物的数量#include <iostream>using namespace std;// 在此处补充你的代码void print() { cout << Animal::number << " animals in the zoo, " << Dog::number << " of them are dogs, " << Cat::numbe

2020-10-22 21:58:23

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。