Codeforces Round #224 (Div. 2)

題目:http://codeforces.com/contest/382

?

A?Ksenia and Pan Scales

一個求天平是否能夠平衡的題目。。。水題,注意一下結果的輸出就行。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <cstdlib>
 5 #include <algorithm>
 6 using namespace std;
 7 
 8 int main()
 9 {
10     int i,len;
11     int L,R,x,sum;
12      char a[10000],b[10000];
13      while(~scanf("%s",a))
14      {
15          L=0; R=0;
16          for(i=0; i<strlen(a); i++)
17          {
18              if(a[i]=='|')
19              break;
20              L++;
21          }
22          R=strlen(a)-1-L;
23          scanf("%s",b);
24          len=strlen(b);
25          x=abs(L-R);
26 
27          if(x>len)
28          printf("Impossible\n");
29          else if((len-x)%2==1)
30          printf("Impossible\n");
31          else
32          {
33                  sum=L+R+len;
34                  for(i=0; i<L; i++)
35                  printf("%c",a[i]);
36                  for(i=0; i<sum/2-L; i++)
37                  printf("%c",b[i]);
38 
39                  printf("%c",a[L]);
40                  for(i=sum/2-L; i<len; i++)
41                  printf("%c",b[i]);
42                  for(i=L+1; i<strlen(a); i++)
43                  printf("%c",a[i]);
44                  printf("\n");
45          }
46      }
47     return 0;
48 }

?

C?Arithmetic Progression

已知n個數,再給一個數,求有多少種數,能使序列構成等差數列。。

比賽的時候思路有的混亂,沒做,今天做了一下,1Y

網上還有按照 間隔分的做法,思路差不多。。代碼也挺長的。。。

  1 #include <iostream>
  2 #include <cstdio>
  3 #include <cstring>
  4 #include <cstdlib>
  5 #include <map>
  6 #include <algorithm>
  7 using namespace std;
  8 
  9 int a[100005],b[100005];
 10 int n;
 11 int check(int d[],int ant)//判斷是否符合等差數列的條件
 12 {
 13     int i,x;
 14     for(i=0; i<n; i++)
 15     b[i]=d[i];
 16 
 17     b[n]=ant;
 18     sort(b,b+n+1);
 19     x=b[1]-b[0];
 20     for(i=2; i<=n; i++)
 21     {
 22         if((b[i]-b[i-1])!=x)
 23         return 0;
 24     }
 25     return 1;
 26 }
 27 
 28 int main()
 29 {
 30     int i,f,x,sum,ans;
 31     while(~scanf("%d",&n))
 32     {
 33         map<int,int>mp;
 34         map<int,int>::iterator iter;
 35         x=0;
 36         for(i=0; i<n; i++)
 37             scanf("%d",&a[i]);
 38 
 39         if(n==1)  //特判
 40         printf("-1\n");
 41         else
 42         {
 43             sort(a,a+n);
 44             f=0;
 45             for(i=1; i<n; i++)
 46             if(a[i-1]==a[i])
 47             {
 48                 f=1; break;
 49             }
 50 
 51             if(a[0]==a[n-1])//特判
 52             printf("1\n%d\n",a[0]);
 53             else if(f)
 54             printf("0\n");//特判
 55             else
 56             {
 57                x=a[1]-a[0];
 58                if(check(a,a[0]-x)) //情況1,假設前兩個與整個序列相符合,而且整個序列已經等差,前面
 59                {
 60                    mp[a[0]-x]++;
 61                }
 62                if(check(a,a[n-1]+x)&&mp[a[n-1]+x]==0)//情況1,假設前兩個與整個序列相符合,而且整個序列已經等差,后面
 63                mp[a[n-1]+x]++;
 64                for(i=2; i<n; i++)  //情況2,假設前兩個與整個序列相符合,而且整個序列沒有等差
 65                {
 66                    if((a[i]-a[i-1])!=x)
 67                    {
 68                        if(check(a,a[i-1]+x)&&mp[a[i-1]+x]==0)
 69                        mp[a[i-1]+x]++;
 70                        break;
 71                    }
 72                }
 73                if(n>=3) //情況3,假設前兩個與整個序列相符合
 74                {
 75                    x=a[2]-a[1];
 76                    if(check(a,a[0]+x)&&mp[a[0]+x]==0)
 77                    mp[a[0]+x]++;
 78                }
 79                else  //情況4,只有兩個,取中間的值
 80                {
 81                    if((a[0]+a[1])%2==0)
 82                    {
 83                        if(check(a,(a[0]+a[1])/2)&&mp[(a[0]+a[1])/2]==0)
 84                        mp[(a[0]+a[1])/2]++;
 85                    }
 86                }
 87                sum=0;
 88                iter=mp.begin();
 89                while(iter!=mp.end())
 90                {
 91                    sum++;
 92                    iter++;
 93                }
 94                if(sum==0)
 95                printf("%d\n",sum);
 96                else
 97                {
 98                    printf("%d\n",sum);
 99                    ans=0;
100                    iter=mp.begin();
101                   while(iter!=mp.end())
102                   {
103                    ans++;
104                    if(ans!=sum)
105                    printf("%d ",iter->first);
106                    else
107                    printf("%d\n",iter->first);
108                    iter++;
109                   }
110                }
111             }
112         }
113     }
114     return 0;
115 }

?

轉載于:https://www.cnblogs.com/bfshm/p/3524892.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/376126.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/376126.shtml
英文地址,請注明出處:http://en.pswp.cn/news/376126.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

二叉樹第i層中的所有結點_講透學爛二叉樹(二):圖中樹的定義amp;各類型樹的特征分析...

日常中我們見到的二叉樹應用有&#xff0c;Java集合中的TreeSet和TreeMap&#xff0c;C STL中的set、map&#xff0c;以及Linux虛擬內存的管理&#xff0c;以及B-Tree&#xff0c;B-Tree在文件系統&#xff0c;都是通過紅黑樹去實現的。雖然之前寫過《再談堆排序&#xff1a;堆…

node-webkit 開發環境搭建

node-webkit支持的操作系統類型&#xff1a; Linunx:32bit / 64bitWindows: win32Mac:32bit,10.7 開發環境 1&#xff0c;根據自己的操作系統下載響應的nw二進制文件&#xff0c;下載地址&#xff1a;https://github.com/rogerwang/node-webkit 2,建立基本開發目錄&#xff0c;…

mysql sqlsugar_.net core +mysqlSugar(最為簡單的增刪改查)

首先建立.net Core API - empty 這個就不說了然后創建新的Controller記得添加路由[Route("api/Users")]然后在Nuget Packages安裝 所需安裝包這里是用mysql所以下載如下的mysqlSugarCore(切記不要忘記安裝Mysql.Data)創建實例化class文件DbText.cs用于連接數據庫&…

關于eclipse的indigo版中文注釋時字體太小的問題(轉)

eclipse目前最新版代號indigo, 在win7上使用時中文注釋時字體太小的問題. 為什么會這樣? 首先我們應該知道, 在win7系統中, font是有"顯示"和"隱藏" 狀態的. 默認情況下, eclipse使用的默認字體courier new是處于 "隱藏"下的. 這樣當eclipse打開…

webdriver(python)學習筆記七——多層框架定位與智能等待

多層框架或窗口定位&#xff1a; switch_to_frame()switch_to_window()智能等待&#xff1a; implicitly_wait()現在web應用中經常會遇到框架如&#xff08;frame&#xff09;或窗口&#xff08;windows&#xff09;的應用&#xff0c;這樣定位就比較難&#xff0c;有時定位一個…

bbp代碼python_如何正確計算加密債券價格的BBP(Bollinger波段百分比)?

我試圖用這個代碼計算python中的BBP(Bollinger頻帶百分比)。然而&#xff0c;我的^{cd1>}函數返回^{{cd2>}或^{cd3>}用于^{cd4>}。當我使用一些硬幣收盤價時&#xff0c;令人困惑的是&#xff0c;這個函數返回正確的^{cd4>}數字(而不是inf)。這是我的python代碼…

ASP.NET學習路線圖

轉自&#xff1a;http://www.cnblogs.com/huangmeimujin/archive/2011/08/08/2131242.html 如果你已經有較多的面向對象開發經驗&#xff0c;跳過以下這兩步&#xff1a; 第一步 掌握一門.NET面向對象語言&#xff0c;C#或VB.NET 我強烈反對在沒系統學過一門面向對象(OO)語言的…

centos 多個mysql數據庫_CentOS6.5 一臺服務器同時安裝多個Mysql數據庫

建用戶與組groupadd mysqluseradd -g mysql mysql下載源碼&#xff1a;wget https://downloads.mariadb.org/interstitial/mariadb-10.1.10/source/mariadb-10.1.10.tar.gztar -xvf mariadb-10.1.10.tar.gz1、編譯&#xff1a;cmake . -DCMAKE_INSTALL_PREFIX/var/lib/mysql33…

MVC3學習 一 ViewBag和Html.Raw

ViewBag類似于JavaScript的語法&#xff0c;在賦值時動態賦值&#xff0c;比如ViewBag.Dog“哈哈” &#xff0c;這樣就會創建一個ViewBag.Dog的對象&#xff0c;供前端頁面調用。 在調用時&#xff0c;前臺頁面用razor方式&#xff0c;ViewBag 直接使用。 public class HomeCo…

PHPCMS源碼分析(二)

index.php中引入了phpcms框架的入口文件&#xff0c;下面我們看下這個入口文件 /phpcms/base.php define(IN_PHPCMS, true);//防止惡意調用//PHPCMS框架路徑 define(PC_PATH, dirname(__FILE__).DIRECTORY_SEPARATOR); //重新定義網站根目錄 if(!defined(PHPCMS_PATH)…

mysql 5.6密鑰_MySQL的密鑰文件不正確

我遇到了InnoDB的問題(表是最初的MyISAM,但是之前將它轉換為InndoB)表;我正在嘗試運行此查詢&#xff1a;SELECTposts.id,posts.post_titleFROMrss_posts AS postsINNER JOIN rss_feeds AS feeds ON posts.blog_idfeeds.idWHEREfeeds.blog_language1ORDER BYposts.post_date_db…

JS-取出字符串中重復次數最多的字符并輸出

/**取出字符串中重復字數最多的字符 */ var words sdfghjkfastgbyhnvdstyaujskgfdfhlaa;      //創建字符串 var word,                          //單個字符length;                          //該字符的長度 //…

windows下查看靜態庫和動態庫的導出函數

在window下查看動態庫的導出函數可以用vs自帶的Depends工具&#xff1b; 查看靜態庫的信息要用命令行來實現&#xff1a; dumpbin /LINKERMEMBER Test.lib > 1.txt 上面的功能是將靜態庫的信息導出保存在1.txt文件中&#xff0c;這樣就可以在1.txt文件中查看相關的信…

linux ll 文件大小單位_該如何改善 Linux 系統性能?

系統性能一直是一個受關注的話題&#xff0c;如何通過最簡單的設置來實現最有效的性能調優&#xff0c;如何在有限資源的條件下保證程序的運作&#xff0c;ulimit 是我們在處理這些問題時&#xff0c;經常使用的一種簡單手段。ulimit 是一種 linux 系統的內鍵功能&#xff0c;它…

深入Javascript中apply、call、bind

最近在看一下node package的源碼&#xff0c;發現很多里面都包含了function這個對象的apply、call、bind這三個方法&#xff0c;于是想拿出來再看看。。 apply、call 在 javascript 中&#xff0c;call 和 apply 都是為了改變某個函數運行時的上下文&#xff08;context&#x…

優秀案例!教您如何設計現代簡約風格網頁

我們看到越來越多的設計師開始擁抱簡約的網站設計方法&#xff0c;消除網站不必要的元素&#xff0c;保留真正重要的內容&#xff0c;干凈、直觀的設計&#xff0c;就像今天的我們將展示的這些網站。 下面是一組不同風格的簡約設計的網站例子&#xff0c;美麗的導航、整潔的菜單…

怎么清理mysql的死鏈接_什么是死鏈接?如何正確處理死鏈接

什么是死鏈接&#xff1f;我們應該如何正確處理死鏈接呢&#xff1f;小剛SEO為你解答。什么是死鏈接&#xff1f;因鏈接更改或搜索引擎所收錄的網站路徑被刪除了&#xff0c;形成沒法打開的死鏈接。死鏈接的危害&#xff1a;1.死鏈數據過多時&#xff0c;對網站訪問體驗和用戶轉…

數據分頁和使用存儲過程的數據分頁

--使用存儲過程的數據分頁 --pageSize 一頁有多少條 --pageIndex 第幾頁 --totalCount 總共有多少條 --分頁的第一種方法 select top(10) * from Ams_Area where ar_id not in ( Select top(0) ar_id from Ams_Area order by ar_id ) order by ar_id --分頁的第二種方…

mysql generaton_Mysql 集成隨機唯一id mysql unique number generation

一句代碼&#xff1a;SELECT FLOOR(10000 RAND() * 89999) AS random_numberFROM table1WHERE "random_number" NOT IN (SELECT unique_id FROM table2)LIMIT 1隨機生成5位數字&#xff0c;并且不重復。上面的代碼真是給人無限的聯想力。例如&#xff1a;function g…

NavMeshAgent 動態加載障礙物

如果你想讓游戲人物繞開一些物體, 這些物體動態生成出來的.只需要給物體添加NavMeshObstacle組件即可 1. 綠色方塊添加NavMeshObstacle組件 2. 紅色方塊沒有添加NavMeshObstacle組件,被小球穿透了%>_<% 轉載于:https://www.cnblogs.com/plateFace/p/4385629.html