201712-2 遊戲 CCF計算機軟體能力認證考試
問題描述
試題編號: 201712-2
試題名稱: 遊戲
時間限制: 1.0s
記憶體限制: 256.0MB
問題描述:
問題描述
有n個小朋友圍成一圈玩遊戲,小朋友從1至n編號,2號小朋友坐在1號小朋友的順時針方向,3號小朋友坐在2號小朋友的順時針方向,……,1號小朋友坐在n號小朋友的順時針方向。
遊戲開始,從1號小朋友開始順時針報數,接下來每個小朋友的報數是上一個小朋友報的數加1。若一個小朋友報的數為k的倍數或其末位數(即數的個位)為k,則該小朋友被淘汰出局,不再參加以後的報數。當遊戲中只剩下一個小朋友時,該小朋友獲勝。
例如,當n=5, k=2時:
1號小朋友報數1;
2號小朋友報數2淘汰;
3號小朋友報數3;
4號小朋友報數4淘汰;
5號小朋友報數5;
1號小朋友報數6淘汰;
3號小朋友報數7;
5號小朋友報數8淘汰;
3號小朋友獲勝。
給定n和k,請問最後獲勝的小朋友編號為多少?
輸入格式
輸入一行,包括兩個整數n和k,意義如題目所述。
輸出格式
輸出一行,包含一個整數,表示獲勝的小朋友編號。
樣例輸入
5 2
樣例輸出
3
樣例輸入
7 3
樣例輸出
4
資料規模和約定
對於所有評測用例,1 ≤ n ≤ 1000,1 ≤ k ≤ 9。
解題思路
用隊列表示,先儲存隊首的資料top,當它不滿足要求則pop刪除,當它滿足要求則q.push(top)重新插入隊尾
不管是否滿足要求,報數num都要+1
程式碼
#include<queue>
#include<iostream>
using namespace std;
int main()
{
int n, m, i, num = 1;
cin >> n >> m;
queue<int >q;
for (i = 1; i <= n; i++)
q.push(i);
while (q.size() > 1)
{
int top = q.front();
q.pop();
if (num%m != 0 && num % 10 != m)
{
q.push(top);
}
num++;
}
cout << q.front();
return 0;
}
相似問題——約瑟夫問題
一般形式:
約瑟夫問題是個有名的問題:N個人圍成一圈,從第一個開始報數,第M個將被殺掉,最後剩下一個,其餘人都將被殺掉。例如N=6,M=5,被殺掉的順序是:5,4,6,2,3,1。
程式碼
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int n,m,a[1001] = {0};
int flag = 0,i = 0,sum = 0;
cin>>n>>m;
while(flag!=n)//人還沒有死完
{
i++;
if(i>n)//模擬環的結構 ,超過總數則從第一個人開始
i = 1;
if(a[i]==0)
sum++;
if(sum == m)
{
sum = 0;
cout<<i<<" ";
a[i] = 1;//標記死者座標
flag++;
}
}
return 0;
}
相關推薦
201712-2 遊戲 CCF計算機軟體能力認證考試
問題描述 試題編號: 201712-2 試題名稱: 遊戲 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述 有n個小朋友圍成一圈玩遊戲,小朋友從1至n編號,2號小朋友坐在1號小朋友的順時針方向,3號小朋友
201803-2碰撞的小球 CCF計算機軟體能力認證考試
試題編號: 201803-2 試題名稱: 碰撞的小球 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述 數軸上有一條長度為L(L為偶數)的線段,左端點在原點,右端點在座標L處。有n個
第三次CCF計算機軟體能力認證考試題解(Java)--201412--Z字形掃描--100分通過
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n;
第六次CCF計算機軟體能力認證考試(第四題)
問題描述 某國有n個城市,為了使得城市間的交通更便利,該國國王打算在城市之間修一些高速公路,由於經費限制,國王打算第一階段先在部分城市之間修一些單向的高速公路。 現在,大臣們幫國王擬了一
CCF計算機軟體能力認證模擬試題參考答案(JAVA)(201703 1+2)
1.分蛋糕: 小明今天生日,他有n塊蛋糕要分給朋友們吃,這n塊蛋糕(編號為1到n)的重量分別為a1, a2, …, an。小明想分給每個朋友至少重量為k的蛋糕。小明的朋友們已經排好隊準備領蛋糕,對於每個朋友,小明總是先將自己手中編號最小的蛋糕分給他,當這個朋友所分得蛋
CCF計算機軟體能力認證試題練習:201809-2 買菜
買菜 來源:CCF 標籤: 參考資料: 相似題目: 題目 小H和小W來到了一條街上,兩人分開買菜,他們買菜的過程可以描述為,去店裡買一些菜然後去旁邊的一個廣場把菜裝上車,兩人都要買n種菜,所以也都
CCF計算機軟體能力認證試題練習:201712-3 Crontab
Crontab 來源: 標籤: 參考資料: 相似題目: 題目 輸入 輸出 輸入樣例 3 201711170032 201711222352 0 7
CCF計算機軟體能力認證 C++ 畫圖
問題描述 用 ASCII 字元來畫圖是一件有趣的事情,並形成了一門被稱為 ASCII Art 的藝術。例如,下圖是用 ASCII 字元畫出來的 CSPRO 字樣。 ..____.____..____..____...___.. ./._
CCF計算機軟體能力認證試題練習:201403-1 相反數
相反數 來源: 標籤: 參考資料: 相似題目: 題目 有 N 個非零且各不相同的整數。請你編一個程式求出它們中有多少對相反數(a 和 -a 為一對相反數
CCF計算機軟體能力認證 C++ 俄羅斯方塊
問題描述 俄羅斯方塊是俄羅斯人阿列克謝·帕基特諾夫發明的一款休閒遊戲。 遊戲在一個15行10列的方格圖上進行,方格圖上的每一個格子可能已經放置了方塊,或者沒有放置方塊。每一輪,都會有一個新的由4個小方塊組成的板塊從方格圖的上方落下,玩家可以操作板塊左右移動放到合適的
第十三次CCF計算機軟體能力認證CSP題解
/* csp13-1 跳一跳 2017/04/02 by Tawn */ #include <bits/stdc++.h> using namespace std; const int maxn = 100; int main() { int i;
CCF計算機軟體能力認證試題練習-門禁系統(Java參考答案學習記錄)
問題描述 濤濤最近要負責圖書館的管理工作,需要記錄下每天讀者的到訪情況。每位讀者有一個編號,每條記錄用讀者的編號來表示。給出讀者的來訪記錄,請問每一條記錄中的讀者是第幾次出現。 輸入格式
CCF計算機軟體能力認證模擬試題-最大的矩形(Java參考答案學習記錄)
問題描述 在橫軸上放了n個相鄰的矩形,每個矩形的寬度是1,而第i(1 ≤ i ≤ n)個矩形的高度是hi。這n個矩形構成了一個直方圖。例如,下圖中六個矩形的高度就分別是3, 1, 6, 5, 2, 3。 請找出能放在給定直方圖裡面積最大的矩形,它的邊要與座標軸平
第十三次CCF計算機軟體能力認證 題解(臨時版)
前言剛做完= =第五題寫炸了先大概講講我的思路,有機會我會寫個完整的題解(估計不可能啦,忙的要死)這些程式碼都是我比賽時候寫的,不保證正確性第一題水題,記錄最後一次的得分即可#include <cstdio> using namespace std; int ma
2016年4月CCF計算機軟體能力認證模擬試題程式碼參考
問題描述 給定n個正整數,找出它們中出現次數最多的數。如果這樣的數有多個,請輸出其中最小的一個。 輸入格式 輸入的第一行只有一個正整數n(1 ≤ n ≤ 1000),表示數字的個數。 輸入的第二行有n個整數s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤
CCF計算機軟體能力認證試題練習-影象旋轉(Java參考答案學習記錄)
問題描述 旋轉是影象處理的基本操作,在這個問題中,你需要將一個影象逆時針旋轉90度。 計算機中的影象表示可以用一個矩陣來表示,為了旋轉一個影象,只需要將對應的矩陣旋轉即可。 輸入格式 輸入的第一行包含兩個整數n, m,分別表示影象矩陣的行數和列數。
CCF計算機軟體能力認證 C++ 碰撞的小球
問題描述 數軸上有一條長度為L(L為偶數)的線段,左端點在原點,右端點在座標L處。有n個不計體積的小球線上段上,開始時所有的小球都處在偶數座標上,速度方向向右,速度大小為1單位長度每秒。 當小球到達線段的端點(左端點或右端點)的時候,會立即向相反的方向移動,速度大小
CCF計算機軟體能力認證試題練習-相鄰數對(Java參考答案學習記錄)
問題描述 給定n個不同的整數,問這些數中有多少對整數,它們的值正好相差1。 輸入格式 輸入的第一行包含一個整數n,表示給定整數的個數。 第二行包含所給定的n個整數。 輸出格式
201604-1折點計數——CCF計算機軟體能力認證試題歷屆真題
一、原題 問題描述 試題編號: 201604-1 試題名稱: 折點計數 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述 給定n個整數表示一個商店連續n天的銷售量。如果某天之前銷售量在增長,而後一天銷售量減少,則稱這一天
CCF計算機職業資格認證考試 201809-2 買菜
stream 朋友 職業 iostream 正整數 i++ 輸入格式 lap 時長 以下內容過於幼稚,請大佬自覺繞道。。 題目描述: 時間限制:1.0s內存限制:256.0MB問題描述:問題描述 小H和小W來到了一條街上,兩人分開買菜,他們買菜的過程可以描述為,去店裏