1. 程式人生 > >CSU 1972: 大梵天的恩賜 1973: 給自己出題的小X 1974: 神奇藥水 1975: 機器人搬重物

CSU 1972: 大梵天的恩賜 1973: 給自己出題的小X 1974: 神奇藥水 1975: 機器人搬重物

#include <iostream>
#include <cstring>
#include <cmath>
#include <cstdio>
using namespace std;

typedef long long int LL;
const int maxn=1234567+1;
const int mod=233333333;
int ans[maxn]={0,2};

int main()
{
    for(int i=2;i<=1234567;i++)
    {
        ans[i]=(2*ans[i-1]+2
)%mod; } int n; while(scanf("%d",&n)!=EOF) { int res1=ans[n]; int res2=(ans[n]*2-1)%mod; printf("%d %d\n",res1,res2); } return 0; }
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const
int INF=0x3f3f3f3f; const int MAXN=50; int a[MAXN]; int ans,n; void dfs(int pos,int k,int gap) { if(pos==n||gap<=k+1) return; for(int i=pos+1;i<=n;i++) { if(a[i]-a[pos]>k+1) { dfs(i,k+1,min(gap,a[i]-a[pos])); ans++; } } } int main
()
{ int T; scanf("%d",&T); while(T--) { scanf("%d",&n); ans=0; for(int i=1;i<=n;i++) scanf("%d",&a[i]); sort(a+1,a+n+1); for(int i=1;i<=n;i++) dfs(i,1,INF); printf("%d\n",ans); } return 0; }
#include<iostream>
#include<cstdio>
#include<vector>
#include<map>
#include<set>
#include<queue>
#include<cmath>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
const int INF=0x3f3f3f3f;
const double eps=1e-6;
const int MAXN=50;
typedef pair<double,double> PDD;
set<PDD> s;


int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        s.clear();
        int op;
        double x,y;
        for(int i=1;i<=n;i++)
        {
            scanf("%d%lf%lf",&op,&x,&y);
            PDD tmp=make_pair(x,y);
            if(op==0)
            {
                if(!s.empty())
                {
                    auto p=s.begin(),q=s.end();q--;
                    if(!s.empty()&&(*p).first<=x&&(*q).first>=x)
                        printf("Yes\n");
                    else printf("No\n");
                }else
                {
                    printf("No\n");
                }
            }else if(op==1)
            {
                s.insert(tmp);
            }else
            {
                auto p=s.find(tmp);
                if(p!=s.end())
                {
                    s.erase(p);
                }
            }
        }
    }
    return 0;
}
#include<cstdio>
#include<queue>
#include<cstring>
using namespace std;
const int maxn=55;
char c;
int a[maxn][maxn],n,m,sx,sy,ex,ey,sd;
int dy[4]={1,0,-1,0};
int dx[4]={0,1,0,-1};
bool vis[maxn][maxn][5];
struct node
{
    int x,y,d,step;//用d(0、1、2、3、4)表示不同朝向
    bool operator < (const node &a) const{
        return a.step<step;
    }
};
priority_queue<node> q;
//queue<node> q;

bool check(int x,int y)
{
    if(x>=n||y>=m||x<=0||y<=0)
        return false;
    if(a[x][y]==1||a[x+1][y]==1||a[x][y+1]==1||a[x+1][y+1]==1)
        return false;
    return true;
}

void bfs()
{
    memset(vis,false,sizeof(vis));
    node now,next;
    now.x = sx;
    now.y = sy;
    now.d = sd;
    now.step = 0;
    if(!check(sx,sy))
    {
        printf("-1\n");
        return ;
    }
    if(!check(ex,ey))
    {
        printf("-1\n");
        return ;
    }
    while(!q.empty()) q.pop();
    q.push(now);
    vis[sx][sy][sd] = true;
    while(!q.empty())
    {
        now = q.top();
        q.pop();
        //printf("%d %d %d %d\n",now.x,now.y,now.d,now.step);
        if(now.x==ex&&now.y==ey)
        {
            printf("%d\n",now.step);
            return ;
        }
        for(int step=1;step<=3;step++)
        {
            next.x = now.x+dx[now.d]*step;
            next.y = now.y+dy[now.d]*step;
            next.d = now.d;
            if(check(next.x,next.y)&&vis[next.x][next.y][next.d]==false)
            {
                next.step = now.step+1;
                q.push(next);
                vis[next.x][next.y][next.d] = true;
            }
            else//如果1 2 3某一個不能走,那後面的肯定不能走
            {
                break;
            }
        }
        if(vis[now.x][now.y][(now.d+1)%4]==false)//ÓÒת
        {
            next.x = now.x;
            next.y = now.y;
            next.d = (now.d+1)%4;
            next.step = now.step+1;
            q.push(next);
            vis[next.x][next.y][next.d] = true;
        }
        if(vis[now.x][now.y][(now.d-1+4)%4]==false)//×óת
        {
            next.x = now.x;
            next.y = now.y;
            next.d = (now.d-1+4)%4;
            next.step = now.step+1;
            q.push(next);
            vis[next.x][next.y][next.d] = true;
        }
    }
    printf("-1\n");
}
int main()
{
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=m;j++)
            {
                scanf("%d\n",&a[i][j]);
            }
        }
        scanf("%d %d %d %d",&sx,&sy,&ex,&ey);
        getchar();
        scanf("%c",&c);
        if(sx==ex&&sy==ey)
        {
            printf("0\n");
            continue;
        }
        if(c=='E') sd=0;
        else if(c=='S') sd=1;
        else if(c=='W') sd=2;
        else if(c=='N') sd=3;
        bfs();
    }
}

相關推薦

CSU 1972: 恩賜 1973: 自己出題X 1974: 神奇藥水 1975: 機器人重物

#include <iostream> #include <cstring> #include <cmath> #include <cstdio> using namespace std; typedef long long

CSU-1975 機器人重物(BFS)

技術分享 問題 不能 三種方式 rmi right warning break ont 1975: 機器人搬重物 Time Limit: 1 Sec Memory Limit: 128 Mb Submitted: 64 Solved: 10

2019年的第一,我自己定了一份價值50萬的學習計劃

1. 2018年已經永遠地消逝了,就好像一壺老酒,喝進肚子裡後就再也不可能吐出來了。 今天是2019年的第一天,趕緊花心思制定一份2019年的學習計劃吧!能有多詳細就有多詳細。 有些人覺得,學習計劃有什麼好制定的——今天是一天,明天是一天,後天還是一天,一天一天的就這樣過好了。 但我不這麼覺得。

2018自己個plan,自己一個目標

目標 log div blog 框架 沒有 城市 現狀 clas 元旦假期的開始,標誌著2017已悄然遠去;元旦的假期的結束,標誌著2018的開始。現在全國各地在飄雪,上海這個南方的城市在下雨。雨挺好的,雖沒有大雪那樣包容萬物通篇全收,卻少了少許的寒冷。 元月開始給201

CSU-1974 神奇藥水

bre insert Language 參加 需要 while ive 元素 神奇 CSU-1974 神奇藥水 Description ? 對於csuxushu來說,能夠在CSU(California State University)組織2017年的ACM暑期集訓讓他感到

qq46843騙子qq,我他做了一個網站,然後他不掏錢,騙子真實記錄!

讀取 道理 ava cep 總結 同步代碼塊 編程 類型 線程 qq46843大騙子qq他叫花總,大騙子!我給他做了一個網站,然後他不掏錢,大騙子真實記錄!qq46843大騙子qq,我給他做了一個網站,然後他不掏錢,大騙子真實記錄!有聊天截圖,真的不要相信,空間都是一些吹牛

放端心態,不要自己的心理壓力。

font 心態 事物 並不是 nbsp 這不 自我反思 有一個 反思 心態好不好,還是要看自己 經常活動活動對自己是有很大的好處的,去一個好的地方散散心,或者是找個妹紙出去逛逛街啊(對哦,程序員哪來的妹子或女朋友啊)。這不都好呀! 幹嘛一直憋在一

第二自己做一個在線簡歷吧!

7月 負責 移動客戶端 AI 平面設計 2015年 cli 實現 ffice <!doctype HTML><html> <head> <title>楊雄的簡歷</title> </head>

搭建互聯網+平臺 搜股份推動傳統行業升級

業界 而在 預約 百度 案例 人臉識別 type 結算 醫院 導語:得益於“互聯網+”的助力,健康醫療行業即將轉型升級,而作為“互聯網+”的實踐者,天搜股份也正在推動更多傳統行業的叠代。  你一定遇到過這樣的煩惱,去一趟醫院總是要反復檢查是否忘記帶×××、錢包和就診卡等等,

入職三,公司了100塊錢叫我走人

必須 項目構建 遷移 怎麽 聊天 業務員 java類 工作內容 提交 十月,金秋季節,本是豐收之時,卻因為陸續有同事離職,心中多少有些悲涼之意,頓然想起從參加工作到現在,五年已過,當年青澀懵懂的小年輕,如今出街招搖過市時,被小孩子看到都會喊聲大叔。回想這五年,有心酸和無奈、

早上起來錯過女神我發的微信訊息,還好我用Python找回來了!

一大早醒來,發現女神昨晚發來三條訊息,但是顯示都已撤回,OMG,我錯過了什麼?群裡有一個漂亮妹紙的爆照照片撤回了,想看又看不到!群裡大佬分享的經典語錄被撤回了,感覺錯過一個億!怎麼辦?用無所不能的 Python 就可以將這些撤回的訊息發給你的微信,讓你從此走上人生巔峰 專案環境 語言:Pyt

青銅選手帶你動手擼一個部落格程式自己(可能是第二期)~(佬請忽略此條)

前言 上一篇的的的連結 賴了一個星期了,let us 接著上一篇的搞。 在上一篇裡搞了一下基礎設施建設,這一篇我們...稍微搞那麼一丟丟上層建築。 這一篇裡本菜雞想分享的tip 小程式登陸邏輯與登陸狀態維持的兩種姿勢 傳送評論時的一個投機倒把的小“優化” 小程式微信登陸與前端登陸狀態儲

山東山軟體有限公司

山東山大華天軟體有限公司 使用RvmTranslator技術,將PDMS的RVM模型資料轉換到自己的系統中,實現工廠數字化模型視覺化。   關於華天軟體 山東山大華天軟體有限公司(簡稱:華天軟體),成立於1993年,註冊資金5000萬,員工近400人。華天軟體作為產品創新數字化領域專業供應商

學習資料的路上,別忘了多自己鼓掌

2018年10月21號,已經大資料工作半年的我,今天早上花了2小時,寫了這篇文章,然後想要藉此公眾號也給學弟學妹們做個參考。 有點長,有點絮絮叨叨的,也算是自己學習大資料的一個回顧,一個歷程,一個總結。   剛畢業的我: 2017年,6月20號,我離開大學校門,無限迷惘。

為什麼要學習資料呢?寫資料分析學習者的10個理由

因為大資料爆發,因此出現了大資料開發、大資料分析這兩大主流的工作方向,目前這兩個方向是很熱門,不少人已經在開始轉型往這兩個方向發展,相較而言,轉向大資料分析的人才更多一點,而同時也有不少人在觀望中,這邊科多大資料收集了十個為什麼要學習大資料分析的十個理由。 推薦下小編的大資料學習群;251956

把一張特別的圖片,分成幾十張的圖片,在最短的時間內處理?

說到圖片切塊,首先想到的是拼圖遊戲,在載入圖片的時候回進行圖片切塊操作,增加難度的時候會再一次進行切塊操作,不同的是切塊的數量會更多。 首先來看一下拼圖演算法: [java] view plain copy print?//拼圖publicstatic Bi

csu 1777還是

以前做類似的題都是通過小數點分割整數小數按位去比較大小,操作複雜且易出錯 這次使用strcmp函式 需要注意兩點:1,後面位數不夠的要補齊  2,strcmp遇到'\0'會停止,可以通過新增'\0'

距離第一去實習過去了56 ::寫寫自己的想法

mce clas 互聯 inf 頁面 alert 綠色 htm data 1.從前端說起 HTML從最初的那些標簽,什麽都不懂,<br> &nbsp; 等 不懂<head><body> 這些簡單的標簽 HTML就最為印象深刻的是

提高逼格,自己的網站加入智能聊天功能

text hle 人的 現在 lin 人工智能 ges 免費 logs 提高逼格,給自己的網站加入智能聊天功能 引言   現在突然發現有很多 QQ 群都開啟了群機器人的功能,其中有兩個角色,他們分別是:Baby Q 和 QQ 小冰。在 Q 群中,你可以對他們進行任意程度

懷才當遇網-年輕時一味追求高工資,會自己帶來什麽?

發展 市場 做到 年輕人 期貨 留下 人的 決定 這一 年輕時一味追求高工資會給自己帶來什麽?這樣有利嗎? 這是最近知乎上一個很火的問題,有支持年輕人追求高工資的,也有反對的,無論從那個角度去看這個問題都是值得我們深思的,選擇追求高薪或者不追求,都將對我們的職業規劃和職業生